在c++中nullptr与NULL什么区别

nullptr 和 NULL 都是在 C++ 中用来表示空指针的值。但是它们有一些区别:

nullptr 是 C++11 标准新增的特性,是一种特殊的空指针常量,它可以避免与整型宏 NULL 混淆。
NULL 通常是定义为 0 或 (void*)0 的宏,有可能被视作整型,而非指针类型。
nullptr 可以在模板中和重载函数中使用,而 NULL 不能,因为它不是一个真正的类型
nullptr 与指针类型兼容,而NULL 不能和指针类型兼容
为了更好的兼容性,可以在代码中使用 nullptr 代替 NULL,这样能更好的维护程序的安全性。

猜你喜欢

转载自blog.csdn.net/weixin_43466192/article/details/128647072