C++ 中的 nullptr: 为什么需要它?
C++ 中的 nullptr: 为什么需要它?
在 C++ 中,NULL 通常被定义为 0 或者 (void*)0,但这样的定义容易造成歧义,比如在重载函数中,编译器可能无法确定函数调用时传递的是整数 0 还是指针类型的 0。而 nullptr 是一个特殊的关键字,用来表示空指针,它不会被转换成整数类型或者其他类型的指针,因此可以避免这种歧义。
另外,nullptr 还可以与模板类型参数一起使用,使得程序更加类型安全。
因此,建议在 C++11 及以上的版本中,尽量使用 nullptr 来表示空指针。
原文地址: https://www.cveoy.top/t/topic/ouNy 著作权归作者所有。请勿转载和采集!