Qt学习小记-NULL字符串和空(empty)字符串的区别

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() << "相等";

你可能感兴趣的:(Qt)