C++ Qt 返回空 QString

8
我写了一个返回QString的函数。在函数的某些点上,它应该返回一个空的QString
但是,简单地返回""并不起作用。当我使用QString::isEmpty()时也不行。 我的“紧急计划”是返回一个“空”的字符串,并检查文本是否为空。但我认为这不是好的风格。
那么,如何返回一个空的QString呢?
2个回答

15
创建一个空的QString的习惯方式是使用它的默认构造函数,即QString()QString()创建了一个字符串,其中isEmpty()isNull()都返回true
使用字面量""创建的QString是空的(isEmpty()返回true),但不是null(isNull()返回false)。
两者的size()/length()均为0。

0
根据QString文档,返回""应该可以工作;同样返回QString()也可以。
尝试打印出你正在测试的字符串,以确保它真的是空的:
printf("xxx [%s]\n", myStr.toUtf8().constData());

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接