NULL字符串和空(empty)字符串的区别:
一个NULL字符串就是使用QString的默认构造函数或者使用(const char*)0作为参数的构造函数的创建的QString字符串对象;而一个空的字符串是一个大小为0的字符串。一个NULL字符串一定是一个空字符串,而一个空字符串未必是一个NULL字符串。例如:
QString().isNull(); //结果为true
QString().isEmpty(); //结果为true
QString("").isNull(); //结果为false
QString("").isEmpty(); //结果为true
qDebug() << QString((const char *)0).isEmpty(); //结果true
qDebug() << QString((const char *)0).isNull(); //结果true
if((const char *)0==NULL) //相等
qDebug() << "相等";