一、QString(Qt 专属字符串,Unicode 编码,支持中文)

  1. 常用接口:

cpp

运行

QString str = "Qt开发";
str.append("入门");        // 拼接
str.split(",");           // 按逗号分割返回QStringList
str.toInt();              // 字符串转数字
str.trimmed();            // 去除首尾空格

区别 std::string:QString 默认 Unicode,跨平台中文不乱码。


二、QByteArray(原始字节数组,网络 / 文件二进制读写专用)

cpp

运行

QByteArray arr = "abc123";
arr.toHex(); // 转为十六进制字符串
arr.prepend("head");
// 和QString互转
QString s = QString::fromUtf8(arr);
QByteArray b = s.toUtf8();

三、QList(通用链表容器,增删效率高,日常首选)

cpp

运行

QList<int> list;
list<<1<<2<<3;        // 尾部插入
list.at(0);           // 索引取值
list.removeOne(2);    // 删除元素

四、QVector(连续内存数组,随机访问速度优于 QList,大量数据存储)

cpp

运行

QVector<QString> vec{"a","b","c"};
vec.resize(10); // 扩容

选型总结

  1. 文本存储:QString;二进制数据:QByteArray;
  2. 频繁头尾增删:QList;海量数据随机查找:QVector。

更多推荐