在Qt文档中,我们阅读:

bool QSharedPointer::operator! () const

Returns true if this object is null.
This function is suitable for use in if-constructs, like:

 if (!sharedptr) { ... }


bool QSharedPointer::isNull () const
Returns true if this object is holding a reference to a null pointer.

这两个功能有什么区别?很明显,什么是对空指针的引用,但这意味着什么



是什么决定QSharedPointer 是否为空?这些函数如何对应QSharedPointer::data() != null

最佳答案

QSharedPointer类的Qt源:

inline bool operator !() const { return isNull(); }

这证实了@JoachimPileborg在他的评论中所说的-isNull()函数和operator!()是等效的。

关于c++ - QSharedPointer::isNull()和operator!()之间的区别,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19925693/

10-09 03:55