亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? ustring.h

?? khtml在gtk上的移植版本
?? H
?? 第 1 頁 / 共 2 頁
字號:
// -*- c-basic-offset: 2 -*-/* *  This file is part of the KDE libraries *  Copyright (C) 1999-2000 Harri Porten (porten@kde.org) *  Copyright (C) 2003 Apple Computer, Inc. * *  This library is free software; you can redistribute it and/or *  modify it under the terms of the GNU Library General Public *  License as published by the Free Software Foundation; either *  version 2 of the License, or (at your option) any later version. * *  This library is distributed in the hope that it will be useful, *  but WITHOUT ANY WARRANTY; without even the implied warranty of *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU *  Library General Public License for more details. * *  You should have received a copy of the GNU Library General Public License *  along with this library; see the file COPYING.LIB.  If not, write to *  the Free Software Foundation, Inc., 59 Temple Place - Suite 330, *  Boston, MA 02111-1307, USA. * */#ifndef _KJS_USTRING_H_#define _KJS_USTRING_H_#if APPLE_CHANGES#include <sys/types.h>#ifndef KWQ_UNSIGNED_TYPES_DEFINED#define KWQ_UNSIGNED_TYPES_DEFINEDtypedef unsigned char uchar;typedef unsigned long ulong;#endif#endif#include <stdint.h>/** * @internal */namespace DOM {  class DOMString;};class KJScript;class QString;class QConstString;namespace KJS {  class UCharReference;  class UString;  /**   * @short Unicode character.   *   * UChar represents a 16 bit Unicode character. It's internal data   * representation is compatible to XChar2b and QChar. It's therefore   * possible to exchange data with X and Qt with shallow copies.   */  struct UChar {    /**     * Construct a character with uninitialized value.         */    UChar();    /**     * Construct a character with the value denoted by the arguments.     * @param h higher byte     * @param l lower byte     */    UChar(unsigned char h , unsigned char l);    /**     * Construct a character with the given value.     * @param u 16 bit Unicode value     */    UChar(char u);    UChar(unsigned char u);    UChar(unsigned short u);    UChar(const UCharReference &c);    /**     * @return The higher byte of the character.     */    unsigned char high() const { return uc >> 8; }    /**     * @return The lower byte of the character.     */    unsigned char low() const { return uc; }    /**     * @return the 16 bit Unicode value of the character     */    unsigned short unicode() const { return uc; }  public:    /**     * @return The character converted to lower case.     */    UChar toLower() const;    /**     * @return The character converted to upper case.     */    UChar toUpper() const;    unsigned short uc;#if !KWIQ  };#else  } Q_PACKED;#endif  inline UChar::UChar() { }  inline UChar::UChar(unsigned char h , unsigned char l) : uc(h << 8 | l) { }  inline UChar::UChar(char u) : uc((unsigned char)u) { }  inline UChar::UChar(unsigned char u) : uc(u) { }  inline UChar::UChar(unsigned short u) : uc(u) { }  /**   * @short Dynamic reference to a string character.   *   * UCharReference is the dynamic counterpart of @ref UChar. It's used when   * characters retrieved via index from a @ref UString are used in an   * assignment expression (and therefore can't be treated as being const):   * <pre>   * UString s("hello world");   * s[0] = 'H';   * </pre>   *   * If that sounds confusing your best bet is to simply forget about the   * existance of this class and treat is as being identical to @ref UChar.   */  class UCharReference {    friend class UString;    UCharReference(UString *s, unsigned int off) : str(s), offset(off) { }  public:    /**     * Set the referenced character to c.     */    UCharReference& operator=(UChar c);    /**     * Same operator as above except the argument that it takes.     */    UCharReference& operator=(char c) { return operator=(UChar(c)); }    /**     * @return Unicode value.     */    unsigned short unicode() const { return ref().uc; }    /**     * @return Lower byte.     */    unsigned char low() const { return ref().uc; }    /**     * @return Higher byte.     */    unsigned char high() const { return ref().uc >> 8; }    /**     * @return Character converted to lower case.     */    UChar toLower() const { return ref().toLower(); }    /**     * @return Character converted to upper case.     */    UChar toUpper() const  { return ref().toUpper(); }  private:    // not implemented, can only be constructed from UString    UCharReference();    UChar& ref() const;    UString *str;    int offset;  };  inline UChar::UChar(const UCharReference &c) : uc(c.unicode()) { }  /**   * @short 8 bit char based string class   */  class CString {  public:    CString() : data(0), length(0) { }    CString(const char *c);    CString(const char *c, int len);    CString(const CString &);    ~CString();    CString &append(const CString &);    CString &operator=(const char *c);    CString &operator=(const CString &);    CString &operator+=(const CString &c) { return append(c); }    int size() const { return length; }    const char *c_str() const { return data; }  private:    char *data;    int length;  };  /**   * @short Unicode string class   */  class UString {    friend bool operator==(const UString&, const UString&);    friend class UCharReference;    friend class Identifier;    friend class PropertyMap;    friend class PropertyMapHashTableEntry;    /**     * @internal     */    struct Rep {      friend class UString;      friend bool operator==(const UString&, const UString&);            static Rep *create(UChar *d, int l);      static Rep *create(Rep *base, int offset, int length);      void destroy();            UChar *data() const { return baseString ? (baseString->buf + baseString->preCapacity + offset) : (buf + preCapacity + offset); }      int size() const { return len; }            unsigned hash() const { if (_hash == 0) _hash = computeHash(data(), len); return _hash; }      static unsigned computeHash(const UChar *, int length);      static unsigned computeHash(const char *);      void ref() { ++rc; }      void deref() { if (--rc == 0) destroy(); }      // unshared data      int offset;      int len;      int rc;      mutable unsigned _hash;      bool isIdentifier;      UString::Rep *baseString;      // potentially shared data      UChar *buf;      int usedCapacity;      int capacity;      int usedPreCapacity;      int preCapacity;            static Rep null;      static Rep empty;    };  public:    /**     * Constructs a null string.     */    UString();    /**     * Constructs a string from the single character c.     */    explicit UString(char c);    /**     * Constructs a string from a classical zero determined char string.     */    UString(const char *c);    /**     * Constructs a string from an array of Unicode characters of the specified     * length.

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲精品ww久久久久久p站| 成人av在线播放网站| 成熟亚洲日本毛茸茸凸凹| 欧美四级电影在线观看| 日本一区二区免费在线| 日本亚洲三级在线| 在线免费观看日韩欧美| 国产亚洲一本大道中文在线| 日韩高清在线不卡| 91在线小视频| 国产精品区一区二区三区| 久久精品99国产精品| 欧美日韩一区二区电影| 成人欧美一区二区三区白人| 国产九色精品成人porny | 精品国产伦一区二区三区观看体验| 中文字幕五月欧美| 成人av在线观| 国产精品亲子伦对白| 国产精品正在播放| 久久免费视频一区| 国产一区久久久| 2023国产精品自拍| 国产在线精品一区在线观看麻豆| 欧美美女一区二区三区| 亚洲欧美国产高清| 色欧美日韩亚洲| 亚洲欧洲制服丝袜| 91国产精品成人| 亚洲欧美一区二区三区孕妇| 91一区二区在线观看| 亚洲天堂精品在线观看| 91欧美一区二区| 亚洲女性喷水在线观看一区| 日本国产一区二区| 亚洲最大的成人av| 欧美三级韩国三级日本三斤| 亚洲高清视频在线| 日韩一二三四区| 国产真实乱子伦精品视频| 国产日韩在线不卡| 99re6这里只有精品视频在线观看| 亚洲美女视频在线观看| 在线看一区二区| 午夜日韩在线观看| 欧美一级精品在线| 国产精品99久久久久久宅男| 欧美激情艳妇裸体舞| 色丁香久综合在线久综合在线观看| 亚洲一区二区三区视频在线| 91麻豆精品国产综合久久久久久| 精油按摩中文字幕久久| 中文字幕巨乱亚洲| 欧美日韩中文国产| 国产在线精品一区二区不卡了| 国产女同性恋一区二区| 91丝袜美女网| 免费观看在线综合| 国产精品久久夜| 欧美美女网站色| 国产精品一级片在线观看| 综合久久一区二区三区| 在线91免费看| 成人av电影在线网| 日本不卡高清视频| 精品国产乱码久久| 91免费观看视频| 久久99精品国产91久久来源| 国产精品久久久久久久久果冻传媒| 91论坛在线播放| 另类调教123区| 亚洲女女做受ⅹxx高潮| 日韩欧美激情一区| 欧美在线你懂的| 国产成人亚洲精品青草天美| 亚洲成年人影院| 国产精品嫩草99a| 欧美一区二区三区在线视频| av激情亚洲男人天堂| 日本不卡一二三区黄网| 亚洲激情图片小说视频| 久久综合精品国产一区二区三区| 91在线一区二区三区| 国产一区二区精品久久99| 亚洲一区在线观看免费观看电影高清 | 欧美日韩国产综合一区二区| 国产精选一区二区三区| 日韩电影一区二区三区| 亚洲免费视频成人| 亚洲国产精品99久久久久久久久| 91精品欧美福利在线观看| 色综合久久中文综合久久牛| 国产在线精品免费| 美女视频第一区二区三区免费观看网站| 国产精品美女一区二区三区| 日韩亚洲欧美中文三级| 欧美男同性恋视频网站| 一本色道亚洲精品aⅴ| 国产成人精品一区二区三区网站观看| 日本va欧美va欧美va精品| 亚洲国产精品久久久久秋霞影院| 日韩理论电影院| 中文字幕国产精品一区二区| 久久午夜羞羞影院免费观看| 日韩你懂的电影在线观看| 欧美美女一区二区在线观看| 欧美日韩一区二区在线观看视频 | 国产精品123| 乱一区二区av| 免费的成人av| 奇米影视在线99精品| 青青草97国产精品免费观看| 日本伊人色综合网| 男女男精品网站| 麻豆国产精品官网| 久久精品国产第一区二区三区| 日本不卡123| 经典三级视频一区| 国产成人精品亚洲日本在线桃色| 国产一区二区三区不卡在线观看 | 欧美卡1卡2卡| 欧美午夜视频网站| 91精品国产入口| 日韩欧美激情在线| 久久男人中文字幕资源站| 欧美激情自拍偷拍| 国产精品国产精品国产专区不蜜| 亚洲免费观看高清完整版在线观看 | 欧美videofree性高清杂交| 日本一区二区三区四区在线视频| 久久久99精品免费观看| 国产精品理论在线观看| 自拍偷自拍亚洲精品播放| 亚洲美女视频一区| 日韩不卡一二三区| 韩国av一区二区| 成人黄动漫网站免费app| 91麻豆国产在线观看| 精品1区2区3区| 久久色在线观看| 中文字幕在线播放不卡一区| 亚洲国产va精品久久久不卡综合| 免费观看在线综合| 床上的激情91.| 欧美久久久久久久久久| 久久女同性恋中文字幕| 亚洲自拍偷拍麻豆| 久久激五月天综合精品| 91同城在线观看| 日韩女优制服丝袜电影| 亚洲欧洲av色图| 看电视剧不卡顿的网站| 色综合天天综合网国产成人综合天 | 亚洲精品在线观看网站| 亚洲素人一区二区| 老司机精品视频在线| 福利电影一区二区三区| 欧美日韩免费视频| 久久品道一品道久久精品| 一区二区成人在线观看| 国产精品一区久久久久| 欧美日韩情趣电影| 中文字幕一区二区日韩精品绯色| 免费人成精品欧美精品| 在线一区二区三区做爰视频网站| 日韩欧美一区电影| 亚洲国产精品久久人人爱| 成人美女视频在线观看| 日韩一区二区在线观看| 一级做a爱片久久| 成人h版在线观看| 精品国产制服丝袜高跟| 丝袜亚洲另类欧美| 91官网在线免费观看| 国产日产欧美一区二区视频| 日韩精品三区四区| 色综合av在线| 国产精品国模大尺度视频| 国产米奇在线777精品观看| 欧美一区二区福利视频| 亚洲va在线va天堂| 色婷婷av一区二区三区大白胸| 国产精品污污网站在线观看| 黑人巨大精品欧美一区| 欧美一卡2卡3卡4卡| 亚洲mv在线观看| 欧美日韩专区在线| 亚洲黄色小视频| 91免费国产视频网站| 亚洲人成在线播放网站岛国| 99久久精品免费看国产| 国产精品青草久久| 成人h动漫精品| 国产精品第13页| 91在线视频在线| 亚洲女同女同女同女同女同69| 色综合天天综合给合国产| 亚洲图片另类小说| 色综合色综合色综合色综合色综合 | 97久久精品人人做人人爽50路|