QT基础但是很重要的一些小技巧
QString
QString.compare()
先附上一张ASCII表

函数原型有以下几个重载函数
int QString::compare(const QString &s1, const QString &s2, Qt::CaseSensitivity cs = Qt::CaseSensitive)
int QString::compare(const QString &other, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
int QString::compare(const QStringRef &ref, Qt::CaseSensitivity cs = ...) const
int QString::compare(QLatin1String other, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
int QString::compare(QStringView s, Qt::CaseSensitivity cs = ...) const
int QString::compare(const QString &s1, QLatin1String s2, Qt::CaseSensitivity cs = Qt::CaseSensitive)
int QString::compare(QLatin1String s1, const QString &s2, Qt::CaseSensitivity cs = ...)
int QString::compare(const QString &s1, const QStringRef &s2, Qt::CaseSensitivity cs = ...)
但是常用的只有以下两个
int QString::compare(const QString &s1, const QString &s2, Qt::CaseSensitivity cs = Qt::CaseSensitive)
基于字母的ASCII值,将 s1 与 s2 进行比较,如果 s1 小于、等于或大于 s2,则返回小于、等于或大于零的整数。
如果 cs 是 Qt::CaseSensitive,则比较区分大小写;否则,比较不区分大小写。
int x = QString::compare("aUtO", "AuTo", Qt::CaseInsensitive); // x == 0
int y = QString::compare("auto", "Car", Qt::CaseSensitive); // y > 0
int z = QString::compare("auto", "Car", Qt::CaseInsensitive); // z < 0
还有另一种写法
int QString::compare(const QString &other, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
和第一种的区别在于,s1是调用compare()的字符串,s2是&other
1万+

被折叠的 条评论
为什么被折叠?



