当前位置: 代码迷 >> 综合 >> C++关于NULL、0、nullptr
  详细解决方案

C++关于NULL、0、nullptr

热度:88   发布时间:2024-01-05 05:50:40.0

一 关于NULL、0、nullptr

NULL是宏定义,在C语言中NULL被定义为:一个void* 指针,指向的地址为0; C++中
NULL会被定义为0

#ifdef __cplusplus ---简称:cpp c++ 文件
#define NULL 0
#else
#define NULL ((void *)0)
#endif

C++11引入了nullptr 来表示空指针,用来解决NULL的二意性问题

void f(void*)
{
}void f(int)
{
}int main()
{f(NULL); // what function will be called? ,使用nullptr会调用f(void*)
}
  相关解决方案