nullptr和NULL的区别

nullptr和NULL

  • 待删除
    • 概要
    • nullptr的使用场景
    • 补充

待删除

提示:这里可以添加技术概要

c++代码块
shell代码块

这里是引用

概要

nullptr是一个空指针类型,而NULL是一个整数类型(通常为0)。

在表示空指针或空对象时, 推荐使用nullptr
而NULL就当做0使用就好

nullptr的使用场景

1.表示空指针:当一个变量或对象被声明为指向某个类型的指针,但没有初始化为指向任何对象时,可以使用nullptr来表示这个空指针。

int* ptr = nullptr;

2.表示不存在的元素:当访问数组或结构体中的不存在的元素时,可以使用nullptr来表示这个元素不存在。

int arr[5] = {0};
if (arr[3] != nullptr) {
  // 访问 arr[3] 元素
} else {
  // arr[3] 元素不存在
}

补充

class Test
{
public:
    void TestWork(int index)
    {
        std::cout << "TestWork 1" << std::endl;
    }
    void TestWork(int * index)
    {
        std::cout << "TestWork 2" << std::endl;
    }
};

int main()
{
    Test test;
    test.TestWork(NULL);
    test.TestWork(nullptr);
}

你可能感兴趣的:(C++,开发语言,c++)