Fn 1 :
arg
这个函数的具体声明不写了,它有20个重载,典型的示例代码如下:
1: #include
2: #include
3: #include
4: using namespace std;
5:
6: int main()
7: {
8: QString str = QString("Ggicci is %1 years old, and majors in %2.").arg(20).arg("Software Eng");
9: cout << str.toStdString() << endl;
10: return 0;
11: }
输出结果:
Ggicci is 20 years old, and majors in Software Eng.
Press to close this window...
Fn 2 :
sprintf
QString & QString::sprintf ( const char * cformat, ... )
这个函数和 C 中的也是差不多的用法,只不过它作为QString的一个成员函数,使用起来就相当方便了,如:
1: #include
2: #include
3: #include
4: using namespace std;
5: int main()
6: {
7: QString str2;
8: str2.sprintf("Ggicci is %d years old, and majors in %s.", 20, "Software Eng");
9: cout << str2.toStdString() << endl;
10: return 0;
11: }
输入结果:
Ggicci is 20 years old, and majors in Software Eng.
Press to close this window...
转自:http://ggicci.blog.163.com/blog/static/21036409620126464353569/
http://blog.csdn.net/zhoxier/article/details/7663895
QString, QByteArray, 和 QVariant这三个类和容器有许多相同之处,并且在一些情况下可以被当作特殊的容器。 同样,像容器,这些类使用隐式共享来优化内存和速度。
我们将从QString开始。 字符串被每个GUI程序所使用,不仅是用户界面而且还有数据结构。 C++原生提供两种字符串: 传统的C风格以'\0'结尾的字符数组和std::string类。 与这些不同,QString使用16-bit Unicode值。 Unicode 包含 ASCII 和 Latin-1 这个子集和它们的普通数值。 而QString是16-bit,所以它可以表示世界上绝大多数语言的字符。 Unicode的更多信息,请看十七章。
当使用QString时,我们不必操心如此隐秘的细节像分配足够的内存或着是数据是'\0'结尾的。 总的来说,QString可以被认为是一个QChar向量。一个QString能嵌入'\0'字符。 length()函数返回整个字符串大小,包括嵌入的'\0'。
QString提供一个二元+操作符来连接两个字符串和一个+=操作符来向一个字符串追加字符串。 因为QString在字符串的结尾处自动预分配内存,所以通过反复追加字符来增加一个字符串是非常快的。 这是一个+和+=结合的例子:
QString str = "User: ";
str += userName + "\n";
还有一个QString::append()函数与+=操作符有这一样的功能:
str = "User: ";