亚洲欧美第一页_禁久久精品乱码_粉嫩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一区二区三区免费野_久草精品视频
国产98色在线|日韩| 欧美精品粉嫩高潮一区二区| 久久一日本道色综合| 日本午夜一本久久久综合| 欧美日韩免费一区二区三区视频| 国产精品国产三级国产普通话99| 国产成人av在线影院| 国产精品家庭影院| 色综合一区二区| 亚洲第一久久影院| 欧美一级夜夜爽| 久久精工是国产品牌吗| 精品国偷自产国产一区| 国产精品亚洲第一区在线暖暖韩国| 日韩小视频在线观看专区| 蜜臀av一区二区三区| 国产欧美日本一区视频| 一本久道久久综合中文字幕| 日本午夜精品视频在线观看| 久久午夜羞羞影院免费观看| 色综合天天综合在线视频| 亚洲在线中文字幕| 精品国产凹凸成av人导航| 99久久精品国产麻豆演员表| 亚洲动漫第一页| 亚洲国产高清在线| 国产精品久久久久毛片软件| 欧美videos中文字幕| 在线观看亚洲一区| 成人亚洲精品久久久久软件| 久久成人羞羞网站| 亚洲成人av资源| 亚洲精品视频免费观看| 欧美激情一区二区三区蜜桃视频| 久久精品综合网| 精品成人一区二区三区四区| 欧美视频在线一区| 色婷婷狠狠综合| 一本大道av一区二区在线播放| 国产传媒一区在线| 久久99蜜桃精品| 免费xxxx性欧美18vr| 亚洲国产日韩a在线播放性色| 中文字幕精品一区二区三区精品| 3d成人动漫网站| 欧美一卡二卡在线观看| 欧美老女人在线| 6080国产精品一区二区| 日韩一级片在线观看| 欧美一区日本一区韩国一区| 在线播放中文一区| 精品国产露脸精彩对白| 久久嫩草精品久久久精品| 久久精品视频在线免费观看| 国产色产综合色产在线视频| 久久天天做天天爱综合色| 国产亚洲短视频| 亚洲素人一区二区| 亚洲va国产天堂va久久en| 五月婷婷激情综合网| 国产一区二区免费在线| 不卡一区二区三区四区| 99久久久无码国产精品| 欧美一区国产二区| 国产人妖乱国产精品人妖| 亚洲视频免费观看| 免费看精品久久片| 成年人网站91| 日韩天堂在线观看| 韩国精品久久久| 色婷婷av久久久久久久| 精品国产99国产精品| 亚洲女性喷水在线观看一区| 精品亚洲porn| 4438成人网| 亚洲女性喷水在线观看一区| 精品一区二区综合| 欧美区在线观看| 国产精品卡一卡二卡三| 精久久久久久久久久久| 欧美无乱码久久久免费午夜一区| 精品日韩欧美一区二区| 亚洲成人久久影院| 在线观看国产一区二区| 欧美激情中文字幕一区二区| 黄色资源网久久资源365| 3751色影院一区二区三区| 亚洲综合成人在线| 91女厕偷拍女厕偷拍高清| 欧美激情在线观看视频免费| 国产美女精品在线| 欧美成人一区二区三区在线观看 | 国产suv精品一区二区883| 日韩一区二区三区三四区视频在线观看| 国产精品第五页| 色综合天天综合在线视频| 国产精品久线观看视频| 国产1区2区3区精品美女| 国产婷婷色一区二区三区 | 夜夜揉揉日日人人青青一国产精品 | 日韩三级精品电影久久久 | 在线免费av一区| 亚洲国产精品天堂| 欧美丰满高潮xxxx喷水动漫| 日韩成人伦理电影在线观看| 日韩一区二区电影在线| 麻豆精品在线播放| 中文字幕在线观看不卡| 色偷偷成人一区二区三区91| 亚洲一级电影视频| 日韩免费高清视频| 99视频超级精品| 午夜激情久久久| 久久久精品免费观看| 色综合久久中文字幕| 日韩不卡一区二区三区| 久久亚区不卡日本| 色av成人天堂桃色av| 免费的国产精品| 中文字幕第一区综合| 欧美日韩国产三级| 成人毛片在线观看| 久久99精品网久久| 亚洲男同1069视频| 26uuu国产一区二区三区| 色999日韩国产欧美一区二区| 久久99热狠狠色一区二区| 亚洲精品国产a| 国产欧美一区视频| 26uuu久久天堂性欧美| 91精品婷婷国产综合久久性色| jvid福利写真一区二区三区| 日韩**一区毛片| 亚洲18女电影在线观看| 亚洲欧美日韩一区二区| 国产精品久久久久久久久免费相片| 3atv一区二区三区| 欧美蜜桃一区二区三区| 91蝌蚪国产九色| 色综合久久久网| 91福利国产成人精品照片| 91尤物视频在线观看| 成人免费电影视频| 成人av综合在线| 色婷婷综合五月| 精品国产免费久久| 丝袜美腿亚洲一区| 五月激情综合网| 国产一区二区三区在线观看免费 | 国产精品色哟哟网站| 国产精品护士白丝一区av| 国产精品国产成人国产三级| 亚洲免费看黄网站| 亚洲五码中文字幕| 老司机午夜精品| 成人av电影在线观看| 欧美综合一区二区三区| 91精品国产91综合久久蜜臀| 国产清纯美女被跳蛋高潮一区二区久久w| 国产精品色婷婷| 麻豆国产精品一区二区三区 | 国产69精品久久久久毛片| 成人国产电影网| 欧美久久免费观看| 国产精品伦一区| 久久成人综合网| 91精品婷婷国产综合久久性色| 国产精品每日更新在线播放网址 | 成人av电影在线| 91在线视频官网| 久久精品在这里| 极品美女销魂一区二区三区免费| 日韩欧美视频一区| 日本特黄久久久高潮| 欧美亚洲国产一区在线观看网站| 国产精品剧情在线亚洲| 国产成人午夜精品5599| 欧美麻豆精品久久久久久| 亚洲激情在线播放| 色狠狠综合天天综合综合| 国产精品久久99| 成人黄色大片在线观看| 亚洲国产精品国自产拍av| 久久狠狠亚洲综合| 国产视频一区二区在线观看| 高清av一区二区| 久久久99免费| 国产麻豆精品95视频| 国产精品乱人伦一区二区| 97精品电影院| 日韩在线一二三区| 精品成人私密视频| www.在线成人| 日本aⅴ精品一区二区三区| 精品乱人伦一区二区三区| 国产精品一区2区| 亚洲蜜桃精久久久久久久| 欧美日韩国产综合视频在线观看| 亚洲国产成人高清精品| 欧美丰满美乳xxx高潮www|