Qt -- .isNull()和.isEmpty()的区别

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() << "相等";
原文地址:https://www.cnblogs.com/zzzsj/p/14132255.html