一文详解C++关键字nullptr及与NULL的区别.docxVIP

  • 0
  • 0
  • 约1.33千字
  • 约 4页
  • 2025-06-07 发布于四川
  • 举报

一文详解C++关键字nullptr及与NULL的区别.docx

一文详解C++关键字nullptr及与NULL的区别

目录一、nullptr介绍?二、为什么需要nullptr?三、NULL和nullptr的区别?

一、nullptr介绍?

在C++中,引入了一个新的关键字nullptr,用来代替旧版本的NULL

nullptr用于代表空指针,对于指针初始化时使用如下:

int*p1=nullptr;//关键字,代表空指针

之前用指针指向的new出来的堆空间,在回收时就可以将指针指向nullptr

int**p=newint*;

free(p);

p=nullptr;

既然nullptr与之前的NULL使用的方法一致,为什么还要引入nullptr关键字?

二、为什么需要nullptr?

在学过【C/C++】函数重载的知识后,我们就能理解为什么需要nullptr关键字用来代替NULL宏定义

先来写一个函数重载的例子:

这两个函数的函数名相同,参数列表不同(一个是整型参数,一个是指针参数),构成函数重载

voidfun9(inta)

cout__FUNCSIG__endl;

voidfun9(int*p)

cout__FUNCSIG__endl;

}

此时我们在主函数中调用fun9函数,传参为空指针NULL

文档评论(0)

1亿VIP精品文档

相关文档