我做了一个返回QString的函数,在函数的某些地方,它应该返回一个空的QString。只是返回"",不起作用。当我使用QString::isEmpty()时,它不起作用。我的“应急计划”是返回一个“空”字符串,然后用它来检查文本是否为“空”。如何返回空的QString?
QString
""
QString::isEmpty()
vnjpjtjt1#
创建空QString的惯用方法是使用它的默认构造函数,即QString(). QString()创建一个字符串,isEmpty()和isNull()都返回true。使用文字""创建的QString是空的(isEmpty()返回true),但不是null(isNull()返回false)。两者的size()/length()均为0。
QString()
isEmpty()
isNull()
true
false
size()
length()
r1wp621o2#
根据QString文档,返回“”应该有效;返回QString()也应该有效。尝试打印出你正在测试的字符串,以确保它确实是空的:
printf("xxx [%s]\n", myStr.toUtf8().constData());
字符串
2条答案
按热度按时间vnjpjtjt1#
创建空QString的惯用方法是使用它的默认构造函数,即
QString()
.QString()
创建一个字符串,isEmpty()
和isNull()
都返回true
。使用文字
""
创建的QString是空的(isEmpty()
返回true
),但不是null(isNull()
返回false
)。两者的
size()
/length()
均为0。r1wp621o2#
根据QString文档,返回“”应该有效;返回QString()也应该有效。
尝试打印出你正在测试的字符串,以确保它确实是空的:
字符串