我做了一个函数,它返回一个QString. 在我的函数中的某些时候,它应该返回一个空的QString.
只是返回""是行不通的。我用QString::isEmpty()的时候不是。我的“应急计划”是返回一个“空”字符串并用它检查文本是否为“空”。但我不认为这是好的风格。
那么我如何返回一个空的QString?
我做了一个函数,它返回一个QString. 在我的函数中的某些时候,它应该返回一个空的QString.
只是返回""是行不通的。我用QString::isEmpty()的时候不是。我的“应急计划”是返回一个“空”字符串并用它检查文本是否为“空”。但我不认为这是好的风格。
那么我如何返回一个空的QString?
创建空 QString 的惯用方法是使用其默认构造函数,即QString(). QString()创建一个字符串,isEmpty()并为其isNull()返回true。
使用文字创建的 QString""为空(isEmpty()returns true)但不为空(isNull()returns false)。
两者的size()/length()均为 0。
根据 QString 文档,返回 "" 应该可以;应该返回 QString()。
尝试打印出您正在测试的字符串以确保它确实为空:
printf("xxx [%s]\n", myStr.toUtf8().constData());