本文主要是介绍Qt QString类,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
数值输入
C++ 提供了两种字符串的实现方式:一种是C风格的字符串,以“0”结尾;另一种是 C++引入的 String 类型,即标准模板库中的类。Qt则提供了自己的字符串实现方式——QString。
Qt中的QString字符串类:
- 无须担心内存分配
- 无须关心“\0”结尾的注意事项
- 与C语言风格不同,在QString中间可以包含“\0”
- length()函数返回的是整个字符串的长度,而不是开头到“\0”的距离
QString类
在Qt中的QString类中系统配备了许多函数给用户使用:
QString str--是否为空
str.isEmpty() //返回的是布尔类型
str.isNull() //真为(true) 假为(false)--将str2字符串添加到str字符串
str.append(str2)--返回字符串的长度,若空则为0
uint i = str.length()--返回在索引"i"处的字符,如果超过长度则返回0
QChar c = str.at(i)--转换为大小写
str.toUpper()
str.toLower()--字符串比较compare
QString::compare("ab", "ab") //0
QString::compare("ab", "df") //<0
QString::compare("df", "ab") //>0
换成数值
在我们知道QString类的一些常见用法之后,我们就需要知道怎么处理QString对象 ,我们可以直接定义,然后在对其操作,我们怎么把一个QString对象转换成数值呢:
#include <QApplication>
#include <iostream>
using namespace stdint main(int argc, char *argv[])
{QString str = "123.45";double val = str.toFloat();cout<< val<<endl; //123.45bool ok;double d = QString("1234.56e-02").toDouble(&ok); //ok=true;d;12.3456std::cout << d << '' << ok << endl
}
如果我们不想使用c++中的输出流进行输出,也可以使用Qt中的QDebug类来进行输出:
#include <QDebug>qDebug() << str
这篇关于Qt QString类的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!