QLatin1String类的学习
来源:互联网 发布:软件测试原理 编辑:程序博客网 时间:2024/05/17 05:08
QLatin1String类对US-ASCII/Latin-1编码的字符串进行了封装。
许多QString的成员函数都用const char*代替QString作为参数实现重载。这包含拷贝构造函数,赋值操作,比较操作和其他不同的函数,比如insert(), replace(), indexOf(). 这些函数都做了优化以避免在函数调用时从const char*中构造一个QString对象。例如,假定str是QString对象,
- <span style="font-size:18px;"> if (str == "auto" || str == "extern"
- || str == "static" || str == "register") {
- ...
- }</span>
- <span style="font-size:18px;"> if (str == QString("auto") || str == QString("extern")
- || str == QString("static") || str == QString("register")) {
- ...
- }</span>
在程序中定义了QT_NO_CAST_FROM_ASCII的应用程序是无法使用QString的const char*相关的API函数,因此Qt提供了QLatin1String类来更高效的利用const char*的类型,它就是一个关于const char*的一个浅封装。如果利用QLatin1String类来写上述的程序就是
- <span style="font-size:18px;"> if (str == QLatin1String("auto")
- || str == QLatin1String("extern")
- || str == QLatin1String("static")
- || str == QLatin1String("register") {
- ...
- }</span>
得益于QString(const QLatin1String&)这个构造函数,QLatin1String可以在任何需要QString对象的地方使用,比如:
- <span style="font-size:18px;">QLabel *label = new QLabel(QLatin1Stri
0 0
- QLatin1String类的学习
- QLatin1String类的学习
- QLatin1String类的学习
- QLatin1String类的学习
- QLatin1String类的学习
- QLatin1String类的说明
- QLatin1String类
- c++学习(类的学习)
- c++学习(类的学习)
- Arrays类的学习
- 集合类的学习
- Rutime类的学习
- Process类的学习
- CharacterEncodingFilter类的学习
- GregorianCalendar类的学习
- tagSupport类的学习
- CArray类的学习
- string 类的学习
- Finding Nemo(POJ--2049
- Android双击返回键退出的方法
- runloop
- ViewPager不能高度自适应?height=wrap_content 无效解决办法
- C#调用MATLAB的COM组件中如果调用非自带的工具箱函数
- QLatin1String类的学习
- 当客户端socket关闭时,select模型的server端该如何完美的释放掉连接的socket? [问题点数:100分,结帖人guopo]
- Javascript单元测试的基础
- 20150720 高德地图组件快速入门
- ExamManageServiceImpl
- “购买过该商品的用户还购买了”的商品推荐功能实现
- 将Eclipse代码导入到AndroidStudio
- 成绩查询系统Java版-我们要做的还有很多
- 设置UITableviewCell的separatorStyle左边顶格