小编Dan*_*osh的帖子

if(!x)和if(x == nullptr)之间有什么区别吗?

忽略用户定义的运算符重载,在任何情况下其if (!x)行为都与有所不同if (x == nullptr)。或者,反之,在任何情况下其if(x)行为都会与有所不同if (x != nullptr)

例如,标准库中是否有任何类型的!x行为与有所不同x == nullptr

注意:我知道这与SO上的许多其他问题非常相似,但相信仍然可以保证它是自己的问题。我已经给出了为什么的理由:关于NULL的问题与关于nullptr的问题是否有足够的区别?

同样,在那篇文章中,LF指出了std::optional<T*>这种情况。但是,我很想知道是否还有其他类型,尤其是原始类型和/或指针类型。

c++ std

2
推荐指数
1
解决办法
114
查看次数

标签 统计

c++ ×1

std ×1