我是靠谱客的博主 野性皮卡丘,最近开发中收集的这篇文章主要介绍c++为什么要搞一个nullptr代替NULL表示空指针?,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

空指针nullptr


c中使用NULL代表空指针以及数字0的,能够为什么c++中又要多出来nullptr来表示空指针,难道仅仅就是为了和c语言做一个区分(yay:我不是你,我比你高级!)?
其实并不是c++做一个nullptr来锦上添花的。
c++和c的一个很大的不同是c++编译器是支持函数重载的。(关于重载的定义可以百度)
同时在c++语言中,你可以理解成类型也可以作为一种参数,这个概念很重要,你可以在多态和重载等语法和思想中这样子去理解。
比如说函数名func可以有如下两种定义:

void func(int x){
cout << "0" << endl;
}
void func(int* x){
cout << "非0" << endl;
}

此时再使用nullptr和NULL是带你用不同的函数的。
比如

func(null)
0
func(nullptr)0

你理解了么?

最后

以上就是野性皮卡丘为你收集整理的c++为什么要搞一个nullptr代替NULL表示空指针?的全部内容,希望文章能够帮你解决c++为什么要搞一个nullptr代替NULL表示空指针?所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(64)

评论列表共有 0 条评论

立即
投稿
返回
顶部