⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 qstring.h

📁 qt-x11-opensource-src-4.1.4.tar.gz源码
💻 H
📖 第 1 页 / 共 3 页
字号:
    static QString number(double, char f='g', int prec=6);    bool operator==(const QString &s) const;    bool operator<(const QString &s) const;    inline bool operator>(const QString &s) const { return s < *this; }    inline bool operator!=(const QString &s) const { return !operator==(s); }    inline bool operator<=(const QString &s) const { return !operator>(s); }    inline bool operator>=(const QString &s) const { return !operator<(s); }    bool operator==(const QLatin1String &s) const;    bool operator<(const QLatin1String &s) const;    bool operator>(const QLatin1String &s) const;    inline bool operator!=(const QLatin1String &s) const { return !operator==(s); }    inline bool operator<=(const QLatin1String &s) const { return !operator>(s); }    inline bool operator>=(const QLatin1String &s) const { return !operator<(s); }    // ASCII compatibility#ifndef QT_NO_CAST_FROM_ASCII    inline QString(const char *ch) : d(&shared_null)    { d->ref.ref(); *this = fromAscii(ch); }    inline QString(const QByteArray &a) : d(&shared_null)    { d->ref.ref(); *this = fromAscii(a); }    inline QString &operator=(const char *ch)    { return (*this = fromAscii(ch)); }    inline QString &operator=(const QByteArray &a)    { return (*this = fromAscii(a)); }    inline QString &operator=(char c)    { return (*this = QChar(c)); }    // these are needed, so it compiles with STL support enabled    inline QString &prepend(const char *s)    { return prepend(QString::fromAscii(s)); }    inline QString &prepend(const QByteArray &s)    { return prepend(QString(s)); }    inline QString &append(const char *s)    { return append(QString::fromAscii(s)); }    inline QString &append(const QByteArray &s)    { return append(QString(s)); }    inline QString &operator+=(const char *s)    { return append(QString::fromAscii(s)); }    inline QString &operator+=(const QByteArray &s)    { return append(QString(s)); }    inline QString &operator+=(char c)    { return append(QChar(c)); }    inline bool operator==(const char *s) const;    inline bool operator!=(const char *s) const;    inline bool operator<(const char *s) const;    inline bool operator<=(const char *s2) const;    inline bool operator>(const char *s2) const;    inline bool operator>=(const char *s2) const;    inline bool operator==(const QByteArray &s) const { return (*this == s.constData()); }    inline bool operator!=(const QByteArray &s) const { return !(*this == s.constData()); }    inline bool operator<(const QByteArray &s) const { return *this < s.constData(); }    inline bool operator>(const QByteArray &s) const { return *this > s.constData(); }    inline bool operator<=(const QByteArray &s) const { return *this <= s.constData(); }    inline bool operator>=(const QByteArray &s) const { return *this >= s.constData(); }#endif    typedef QChar *iterator;    typedef const QChar *const_iterator;    typedef iterator Iterator;    typedef const_iterator ConstIterator;    iterator begin();    const_iterator begin() const;    const_iterator constBegin() const;    iterator end();    const_iterator end() const;    const_iterator constEnd() const;    // STL compatibility    inline void push_back(QChar c) { append(c); }    inline void push_back(const QString &s) { append(s); }    inline void push_front(QChar c) { prepend(c); }    inline void push_front(const QString &s) { prepend(s); }#ifndef QT_NO_STL    static inline QString fromStdString(const std::string &s);    inline std::string toStdString() const;# ifdef qdoc    static inline QString fromStdWString(const std::wstring &s);    inline std::wstring toStdWString() const;# else#  ifndef QT_NO_STL_WCHAR    static inline QString fromStdWString(const QStdWString &s);    inline QStdWString toStdWString() const;#  endif // QT_NO_STL_WCHAR# endif // qdoc#endif    // compatibility    struct Null { };    static const Null null;    inline QString(const Null &): d(&shared_null) { d->ref.ref(); }    inline QString &operator=(const Null &) { *this = QString(); return *this; }    inline bool isNull() const { return d == &shared_null; }#ifdef QT3_SUPPORT    inline QT3_SUPPORT const char *ascii() const { return ascii_helper(); }    inline QT3_SUPPORT const char *latin1() const { return latin1_helper(); }    inline QT3_SUPPORT QByteArray utf8() const { return toUtf8(); }    inline QT3_SUPPORT QByteArray local8Bit() const{ return toLocal8Bit(); }    inline QT3_SUPPORT void setLength(int nl) { resize(nl); }    inline QT3_SUPPORT QString copy() const { return *this; }    inline QT3_SUPPORT QString &remove(QChar c, bool cs)    { return remove(c, cs?Qt::CaseSensitive:Qt::CaseInsensitive); }    inline QT3_SUPPORT QString &remove(const QString  &s, bool cs)    { return remove(s, cs?Qt::CaseSensitive:Qt::CaseInsensitive); }    inline QT3_SUPPORT QString &replace(QChar c, const QString  &after, bool cs)    { return replace(c, after, cs?Qt::CaseSensitive:Qt::CaseInsensitive); }    inline QT3_SUPPORT QString &replace(const QString &before, const QString &after, bool cs)    { return replace(before, after, cs?Qt::CaseSensitive:Qt::CaseInsensitive); }#ifndef QT_NO_CAST_FROM_ASCII    inline QT3_SUPPORT QString &replace(char c, const QString &after, bool cs)    { return replace(QChar(c), after, cs?Qt::CaseSensitive:Qt::CaseInsensitive); }    // strange overload, required to avoid GCC 3.3 error    inline QT3_SUPPORT QString &replace(char c, const QString &after, Qt::CaseSensitivity cs)    { return replace(QChar(c), after, cs?Qt::CaseSensitive:Qt::CaseInsensitive); }#endif    inline QT3_SUPPORT int find(QChar c, int i = 0, bool cs = true) const    { return indexOf(c, i, cs?Qt::CaseSensitive:Qt::CaseInsensitive); }    inline QT3_SUPPORT int find(const QString &s, int i = 0, bool cs = true) const    { return indexOf(s, i, cs?Qt::CaseSensitive:Qt::CaseInsensitive); }    inline QT3_SUPPORT int findRev(QChar c, int i = -1, bool cs = true) const    { return lastIndexOf(c, i, cs?Qt::CaseSensitive:Qt::CaseInsensitive); }    inline QT3_SUPPORT int findRev(const QString &s, int i = -1, bool cs = true) const    { return lastIndexOf(s, i, cs?Qt::CaseSensitive:Qt::CaseInsensitive); }#ifndef QT_NO_REGEXP    inline QT3_SUPPORT int find(const QRegExp &rx, int i=0) const    { return indexOf(rx, i); }    inline QT3_SUPPORT int findRev(const QRegExp &rx, int i=-1) const    { return lastIndexOf(rx, i); }#endif    inline QT3_SUPPORT QBool contains(QChar c, bool cs) const    { return contains(c, cs?Qt::CaseSensitive:Qt::CaseInsensitive); }    inline QT3_SUPPORT QBool contains(const QString &s, bool cs) const    { return contains(s, cs?Qt::CaseSensitive:Qt::CaseInsensitive); }    inline QT3_SUPPORT bool startsWith(const QString &s, bool cs) const    { return startsWith(s, cs?Qt::CaseSensitive:Qt::CaseInsensitive); }    inline QT3_SUPPORT bool endsWith(const QString &s, bool cs) const    { return endsWith(s, cs?Qt::CaseSensitive:Qt::CaseInsensitive); }    inline QT3_SUPPORT QChar constref(uint i) const    { return at(i); }    QT3_SUPPORT QChar &ref(uint i);    inline QT3_SUPPORT QString leftJustify(int width, QChar fill = QLatin1Char(' '), bool trunc=false) const    { return leftJustified(width, fill, trunc); }    inline QT3_SUPPORT QString rightJustify(int width, QChar fill = QLatin1Char(' '), bool trunc=false) const    { return rightJustified(width, fill, trunc); }    inline QT3_SUPPORT QString lower() const { return toLower(); }    inline QT3_SUPPORT QString upper() const { return toUpper(); }    inline QT3_SUPPORT QString stripWhiteSpace() const { return trimmed(); }    inline QT3_SUPPORT QString simplifyWhiteSpace() const { return simplified(); }    inline QT3_SUPPORT QString &setUnicodeCodes(const ushort *unicode_as_ushorts, int size)    { return setUtf16(unicode_as_ushorts, size); }    inline QT3_SUPPORT const ushort *ucs2() const { return utf16(); }    inline static QT3_SUPPORT QString fromUcs2(const ushort *unicode, int size = -1)    { return fromUtf16(unicode, size); }    inline QT3_SUPPORT QString &setAscii(const char *str, int len = -1)    { *this = fromAscii(str, len); return *this; }    inline QT3_SUPPORT QString &setLatin1(const char *str, int len = -1)    { *this = fromLatin1(str, len); return *this; }protected:    friend class QObject;    const char *ascii_helper() const;    const char *latin1_helper() const;public:#ifndef QT_NO_CAST_TO_ASCII    inline QT3_SUPPORT operator const char *() const { return ascii_helper(); }private:    QT3_SUPPORT operator QNoImplicitBoolCast() const;public:#endif#endif    bool isSimpleText() const { if (!d->clean) updateProperties(); return d->simpletext; }    bool isRightToLeft() const { if (!d->clean) updateProperties(); return d->righttoleft; }private:#if defined(QT_NO_CAST_FROM_ASCII) && !defined(Q_NO_DECLARED_NOT_DEFINED)    QString &operator+=(const char *s);    QString &operator+=(const QByteArray &s);    QString(const char *ch);    QString(const QByteArray &a);    QString &operator=(const char  *ch);    QString &operator=(const QByteArray &a);#endif    struct Data {        QBasicAtomic ref;        int alloc, size;        ushort *data;        ushort clean : 1;        ushort simpletext : 1;        ushort righttoleft : 1;        ushort asciiCache : 1;        ushort reserved : 12;        ushort array[1];    };    static Data shared_null;    static Data shared_empty;    Data *d;    QString(Data *dd, int /*dummy*/) : d(dd) {}#ifndef QT_NO_TEXTCODEC    static QTextCodec *codecForCStrings;#endif    static int grow(int);    static void free(Data *);    void realloc();    void realloc(int alloc);    void expand(int i);    void updateProperties() const;    QString multiArg(int numArgs, const QString **args) const;#ifndef QT_NO_STL    int toWCharArray(wchar_t *array) const;    static QString fromWCharArray(const wchar_t *, int);#endif    static Data *fromLatin1_helper(const char *str, int size = -1);    friend class QCharRef;    friend class QTextCodec;};class Q_CORE_EXPORT QLatin1String{public:    inline explicit QLatin1String(const char *s) : chars(s) {}    inline QLatin1String &operator=(const QLatin1String &other)    { chars = other.chars; return *this; }    inline const char *latin1() const { return chars; }    inline bool operator==(const QString &s) const    { return s == *this; }    inline bool operator!=(const QString &s) const    { return s != *this; }    inline bool operator>(const QString &s) const    { return s < *this; }    inline bool operator<(const QString &s) const    { return s > *this; }    inline bool operator>=(const QString &s) const    { return s <= *this; }    inline bool operator<=(const QString &s) const    { return s >= *this; }private:    const char *chars;};inline QString::QString(const QLatin1String &latin1) : d(fromLatin1_helper(latin1.latin1())){ }inline int QString::length() const{ return d->size; }inline const QChar QString::at(int i) const{ Q_ASSERT(i >= 0 && i < size()); return d->data[i]; }inline const QChar QString::operator[](int i) const{ Q_ASSERT(i >= 0 && i < size()); return d->data[i]; }inline const QChar QString::operator[](uint i) const{ Q_ASSERT(i < uint(size())); return d->data[i]; }inline bool QString::isEmpty() const{ return d->size == 0; }inline const QChar *QString::unicode() const{ return reinterpret_cast<const QChar*>(d->data); }inline const QChar *QString::data() const{ return reinterpret_cast<const QChar*>(d->data); }inline QChar *QString::data(){ detach(); return reinterpret_cast<QChar*>(d->data); }inline const QChar *QString::constData() const{ return reinterpret_cast<const QChar*>(d->data); }inline void QString::detach(){ if (d->ref != 1 || d->data != d->array) realloc(); }inline bool QString::isDetached() const{ return d->ref == 1; }inline QString &QString::operator=(const QLatin1String &s){    *this = fromLatin1(s.latin1());    return *this;}inline void QString::clear(){ if (!isNull()) *this = QString(); }inline QString::QString(const QString &s) : d(s.d){ Q_ASSERT(&s != this); d->ref.ref(); }inline int QString::capacity() const{ return d->alloc; }inline QString &QString::setNum(short n, int base){ return setNum(qlonglong(n), base); }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -