📄 kwqstring.h
字号:
uint _maxAscii:31; uint _isAsciiValid:1; char _internalBuffer[QS_INTERNAL_BUFFER_SIZE]; // Pad out to a (((size + 1) & ~15) + 14) sizeprivate: KWQStringData(const KWQStringData &); KWQStringData &operator=(const KWQStringData &);};#define QSTRING_NULL QString()class QString {public: static const char * const null; // not a QString as in Qt (can't have static constructor), but close enough to be compatible in most cases QString(); QString(QChar); QString(const QByteArray &); QString(const QChar *, uint); QString(const char *); QString(const char *, int len); QString(const QString &); QString &operator=(const QString &); ~QString(); static QString fromLatin1(const char *); static QString fromLatin1(const char *, int len); static QString fromUtf8(const char *); static QString fromUtf8(const char *, int len);#if !KWIQ static QString fromCFString(CFStringRef); static QString fromNSString(NSString *);#endif QString &operator=(char); QString &operator=(QChar); QString &operator=(const char *); QString &operator=(const QCString &); uint length() const; const QChar *unicode() const; const char *latin1() const; const char *ascii() const; bool isAllASCII() const; bool isAllLatin1() const; bool hasFastLatin1() const; void copyLatin1(char *buffer, uint position = 0, uint length = 0xffffffff) const; QCString utf8() const { int length; return utf8(length); } QCString utf8(int &length) const; QCString local8Bit() const; bool isNull() const; bool isEmpty() const; QChar at(uint) const; int compare(const QString &) const; int compare(const char *) const; bool startsWith(const QString &) const; bool startsWith(const char *) const; bool startsWith(const char *, bool caseSensitive) const; int find(char, int index = 0) const; int find(QChar, int index = 0) const; int find(const char *, int index = 0, bool cs = true) const; int find(const QString &, int index = 0, bool cs = true) const; int find(const QRegExp &, int index = 0) const; int findRev(char, int index = -1) const; int findRev(const QString& str, int index, bool cs = true) const; int findRev(const char *, int index = -1) const; int contains(char) const; int contains(const char *, bool cs = true) const; int contains(const QString &, bool cs = true) const; int contains(QChar c, bool cs = true) const; bool endsWith(const QString &) const; // NOTE: toXXXXX integer functions only support base 10 and base 16 // NOTE: toShort, toUShort, toULong, and toDouble are NOT used but are kept // for completeness short toShort(bool *ok=NULL, int base=10) const; // NOTE: ok and base NOT used for toUShort ushort toUShort(bool *ok=NULL, int base=10) const; int toInt(bool *ok=NULL, int base=10) const; // NOTE: base NOT used for toUInt uint toUInt(bool *ok=NULL, int base=10) const; long toLong(bool *ok=NULL, int base=10) const; ulong toULong(bool *ok=NULL, int base=10) const; float toFloat(bool *ok=NULL) const; double toDouble(bool *ok=NULL) const; static QString number(int); static QString number(uint); static QString number(long); static QString number(ulong); static QString number(double); bool findArg(int& pos, int& len) const; QString arg(const QString &, int width=0) const; QString arg(short, int width=0) const; QString arg(ushort, int width=0) const; QString arg(int, int width=0) const; QString arg(uint, int width=0) const; QString arg(long, int width=0) const; QString arg(ulong, int width=0) const; QString arg(double, int width=0) const; QString left(uint) const; QString right(uint) const; QString mid(uint, uint len=0xffffffff) const; QString copy() const; QString lower() const; QString stripWhiteSpace() const; QString simplifyWhiteSpace() const; QString &setUnicode(const QChar *, uint); QString &setLatin1(const char *, int len=-1); QString &setNum(short); QString &setNum(ushort); QString &setNum(int); QString &setNum(uint); QString &setNum(long); QString &setNum(ulong); QString &setNum(double); QString &sprintf(const char *, ...);// __attribute__ ((format (printf, 2, 3))); QString &append(const QString &); QString &append(QChar); QString &append(char); QString &insert(uint, const QString &); QString &insert(uint, QChar); QString &insert(uint, char); QString &insert(uint index, const char *insertChars, uint insertLength); QString &prepend(const QString &); QString &remove(uint, uint); QString &replace(uint index, uint len, const QString &s); QString &replace(const QRegExp &, const QString &); QString &replace(QChar, QChar); QString &append(const QChar *, uint length); QString &append(const char *, uint length); QString &insert(uint position, const QChar *, uint length); QString &prepend(const QChar *, uint length); void fill(QChar, int len=-1); void truncate(uint); void reserve(uint); uint hash() const;/* void compose(); *//* QString visual(); */ bool operator!() const; const QChar operator[](int) const; QString &operator+=(const QString &s) { return append(s); } QString &operator+=(QChar c) { return append(c); } QString &operator+=(char c) { return append(c); }#if !KWIQ CFStringRef getCFString() const; NSString *getNSString() const; void setBufferFromCFString(CFStringRef);#else void setLength(uint newlen);#endifprivate: // Used by QConstString. QString(KWQStringData *constData, bool /*dummy*/); void detach(); void detachAndDiscardCharacters(); void detachIfInternal(); void detachInternal(); void deref(); QChar *forceUnicode();#ifndef KWIQ void setLength(uint);#endif KWQStringData **dataHandle; KWQStringData internalData; static KWQStringData *shared_null; static KWQStringData *makeSharedNull(); static KWQStringData **shared_null_handle; static KWQStringData **makeSharedNullHandle(); friend bool operator==(const QString &, const QString &); friend bool operator==(const QString &, const char *); friend class QConstString; friend class QGDict; friend struct KWQStringData;};QString operator+(const QString &, const QString &);QString operator+(const QString &, const char *);QString operator+(const QString &, QChar);QString operator+(const QString &, char);QString operator+(const char *, const QString &);QString operator+(QChar, const QString &);QString operator+(char, const QString &);inline char *KWQStringData::ascii(){ return _isAsciiValid ? _ascii : makeAscii();}inline QChar *KWQStringData::unicode(){ return _isUnicodeValid ? _unicode : makeUnicode();}inline uint QString::length() const{ return dataHandle[0]->_length;}inline bool QString::isEmpty() const{ return dataHandle[0]->_length == 0;}inline const char *QString::latin1() const{ return dataHandle[0]->ascii();}inline const QChar *QString::unicode() const{ return dataHandle[0]->unicode();}#if !KWIQinline CFStringRef QString::getCFString() const{ return (CFStringRef)getNSString();}#endifinline QString QString::fromLatin1(const char *chs){ return chs;}inline QString QString::fromLatin1(const char *chs, int length){ return QString(chs, length);}inline const char *QString::ascii() const{ return latin1();}inline float QString::toFloat(bool *ok) const{ return (float)toDouble(ok);}inline bool QString::operator!() const{ return isNull();}inline const QChar QString::operator[](int index) const{ return at(index);}inline bool operator==(const char *chs, const QString &qs){ return qs == chs;}inline bool operator!=(const QString &qs1, const QString &qs2){ return !(qs1 == qs2);}inline bool operator!=(const QString &qs, const char *chs){ return !(qs == chs);}inline bool operator!=(const char *chs, const QString &qs){ return !(qs == chs);}inline bool operator<(const QString &qs1, const QString &qs2){ return qs1.compare(qs2) < 0;}inline bool operator<(const QString &qs, const char *chs){ return qs.compare(chs) < 0;}inline bool operator<(const char *chs, const QString &qs){ return qs.compare(chs) > 0;}inline bool operator<=(const QString &qs1, const QString &qs2){ return qs1.compare(qs2) <= 0;}inline bool operator<=(const QString &qs, const char *chs){ return qs.compare(chs) <= 0;}inline bool operator<=(const char *chs, const QString &qs){ return qs.compare(chs) >= 0;}inline bool operator>(const QString &qs1, const QString &qs2){ return qs1.compare(qs2) > 0;}inline bool operator>(const QString &qs, const char *chs){ return qs.compare(chs) > 0;}inline bool operator>(const char *chs, const QString &qs){ return qs.compare(chs) < 0;}inline bool operator>=(const QString &qs1, const QString &qs2){ return qs1.compare(qs2) >= 0;}inline bool operator>=(const QString &qs, const char *chs){ return qs.compare(chs) >= 0;}inline bool operator>=(const char *chs, const QString &qs){ return qs.compare(chs) <= 0;}class QConstString : private QString {public: QConstString(const QChar *, uint); ~QConstString(); const QString &string() const { return *this; }};#if !KWIQextern const CFDictionaryKeyCallBacks CFDictionaryQStringKeyCallBacks;#endif#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -