91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Qt?QString如何使用

發布時間:2022-05-19 11:18:51 來源:億速云 閱讀:152 作者:iii 欄目:開發技術

這篇文章主要講解了“Qt QString如何使用”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“Qt QString如何使用”吧!

QString則使用隱式共享,又稱回寫復制。當兩個對象共享同一份數據時,數據內容不改變,則不進行數據的復制,即將深拷貝和淺拷貝結合起來使用。

QString使用時在連續的內存塊上保存字符串,QString內存分配策略如下:

  • 范圍0~20:每次4個字符。

  • 范圍20~4084:每次2倍。

  • 范圍4084~∞:每次2048個字符。

+:連接字符串

QString str1 = "I ";
QString str2 = "LOVE ";
QString str3 = "YOU";
QString str4 = str1 + str2 + str3; //I LOVE YOU

append():追加字符串

QString str1 = "Hello ";
QString str2 = "World";
str1.append(str2);//Hello World
str1.append("!");//Hello World !

sprintf():賦值/連接/追加字符串

QString str;
str.sprintf("%s","Nice to ");//str = Nice to
str.sprintf("%s %s","Nice to ", "meet you");//str = Nice to meet you

arg():同上

QString str;
str = QString("My name is %1, I'm %2 old.").arg("Paul").arg("17").
//str = My name is Paul, I'm 17 old.

insert():特定位置插入字符串

QString str = "This is test code.";
str.insert(8,"not ");
//str = This is not test code.

prepend():開頭插入字符串

QString str = "This is test code.";
str.prepend("Oh! ");
//str = Oh! This is test code.

replace():替換原字符串某些字符

QString str = "This is test code.";
str.replace(13,5,"data.");
//str = This is test data.

trimmed():移除字符串兩端的空白字符

QString str = "   This is test code.   ";
QString str1 = str.trimmed();
//str = This is test code.

simplified():移除兩端空白字符,使用單個空格字符“ ”替代

QString str = "   This is test code.   ";
QString str1 = str.simplified();
//str = " This is test code. "

startsWith():檢查字符串是否以某個字符串開頭,Qt::CaseSensitive指定

QString str = "This is test code.";
bool result = str.startsWith("This",Qt::CaseSensitive);
//result = true
QString str = "This is test code.";
bool result = str.startsWith("is",Qt::CaseSensitive);
//result = false

endsWith():功能同上,檢查結尾。

QString str = "This is test code.";
bool result = str.endsWith("code.",Qt::CaseSensitive);
//result = true
QString str = "This is test code.";
bool result = str.endsWith("is",Qt::CaseSensitive);
//result = false

contains():判斷一個字符串是否出現過。

QString str = "This is test code.";
bool result = str.contains("code.",Qt::CaseSensitive);
//result = true
QString str = "This is test code.";
bool result = str.contains("what",Qt::CaseSensitive);
//result = false

localeAwareCompare(const QString&, const QString&):比較兩個字符串,前小于后返回負值,相等返回0,大于返回正值。此比較時基于平臺相關的本地字符集。

qDebug()<<"Result:"<<QString::localeAwareCompare("good","bad");
//Result: 1

compare((const QString&, const QString&,Qt::CaseSensitivity):指定是否進行大小寫比較,用法同上。

<:比較是否小于,是則返回true。

<=:比較是否小于等于,是則返回true。

==:比較是否相等,是則返回true。

>=:比較是否大于等于,是則返回true。

>:比較是否大于,是則返回true。

......

toInt():轉整型。

toDouble():轉雙精度浮點型。

toFloat():轉浮點型。

toLong():轉長整型。

toLongLong():轉64位長整型。

......

QByteArray():QString會返回一個const char *的QByteArray,既可以存儲原始字節,也可以存儲以“\0”結尾的8位字符串。

QString str = "I'm good man";
QByteArray ba = str.toAscii();
ba.append("yes,very good");

toAscii():返回一個ASCII編碼的8位字符串。

toLatin1():返回一個Latin-1(ISO8859-1)編碼的8位字符串。

toUtf8():返回一個UTF-8編碼的8位字符串,UTF-8是ASCII碼的超集,它支持整個Unicode字符集。

toLocal8Bit():返回一個系統本地編碼的8位字符串。

isEmpty():檢查是否空字符串。

isNull():檢查是否為空。

QString().isNull; //true
Qstring().isEmpty(); //true
QString("").isNull; //false
QString("").isEmpty(); //true

感謝各位的閱讀,以上就是“Qt QString如何使用”的內容了,經過本文的學習后,相信大家對Qt QString如何使用這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

赫章县| 府谷县| 雅安市| 光泽县| 河北区| 同心县| 集贤县| 罗山县| 广平县| 闽侯县| 苏尼特右旗| 探索| 榆中县| 乌拉特前旗| 红河县| 顺昌县| 娱乐| 定南县| 赫章县| 江城| 浮梁县| 乐东| 肇源县| 色达县| 于田县| 蓬莱市| 鱼台县| 洱源县| 昂仁县| 康马县| 湘阴县| 观塘区| 文安县| 门头沟区| 长治县| 吐鲁番市| 沭阳县| 苏尼特左旗| 邯郸市| 喜德县| 磐安县|