文章目录

  • 结论
  • 理由

结论

如果想表示空指针,那么使用nullptr,而不是NULL。

注:nullptr在C++ 11中才出现。

理由

NULL 是void*类型,它的值为0
可以看到C中的定义如下
#define NULL ((void*)0)
而C++的定义如下
#define NULL 0
所以假设有一天你写了这样的代码,会提示你有二义性

void test(void *p){……
}
void test(int num){……
}
int main(void){test(NULL);return 0;
}

编译器发现两个都可以,就不知道用哪个。
如果用test(nullptr);就不会

为什么用 nullptr 而不是 NULL相关推荐

  1. th:text为null报错_为什么建议你用nullptr而不是NULL?

    来源:公众号[编程珠玑] 作者:守望先生 网站:https://www.yanbinghu.com 前言 在C语言中,我们常常用NULL作为指针变量的初始值,而在C++中,却不建议你这么做. NULL ...

  2. mysql count 返回0_如何在MySQL中使用COUNT時返回0而不是null

    我正在使用此查詢返回存儲在$ sTable中的歌曲列表以及存儲在$ sTable2中的總項目的COUNT.如何在MySQL中使用COUNT時返回0而不是null /* * SQL queries * ...

  3. 浅谈Java设计之——Java初始化数组(List/Map)时为何要空数组而不是null

    我是先学习的C++再学习的Java,这样的路线会让我在学习Java的时候省下很多功夫,但是也给我带来了挺多困扰 一个很大的问题就是两者对待引用数据类型的态度区别很大. Java为了考虑安全,删除了指针 ...

  4. Effective Java之返回零长度的数组或者集合,而不是null(四十三)

    我们经常可以看到这样的代码: private final List<Cheese> cheesesInStock = ...; /*** @return an array containi ...

  5. Effective java 43返回零长度的数组或者集合而不是null

    转载于:https://www.cnblogs.com/limingxian537423/p/8391285.html

  6. C语言-7月22日- NULL和nullptr的深入了解以及VScode对nullptr语句报错问题的解决

    目录 指针的非空判断问题: NULL和nullptr的替换问题: 这里我对于NULL的二义性问题有两个理解: 总结:如果你的编译器支持nullptr的话,尽量选择去使用nullptr而不是NULL. ...

  7. 总结了24个C++的大坑,看你能躲过几个?

    前段时间给部门做了个C++专题的分享,主要分享了C++语言里一些常见的坑,在这里也分享给大家. 开头还是想感谢下我技术交流群里的大佬们,大佬们为我的这篇文章贡献非常多的idea. 以下是本文目录: 首 ...

  8. C 的16个大坑,你能躲过几个?

    首先说下C 和C语言有什么区别?分享一个我在知乎上看见的回答: C ≈ C with classes, C with STL C:面向机器编程 C :面向编译器编程 C 有个很重要的特性叫RAII,个 ...

  9. 【每日一题】(D0731)锦囊 区间

    文章目录 一.选择题 二.问答 三.编程题 一.选择题 1.测试某个函数,函数的输入是 [2,10] 的整数,使用边界值分析法,那么输入的值应该有哪些 ?()   A 1,2,9,11   B 1,2 ...

最新文章

  1. Mobileye采用单目摄像头做ADAS太不精确
  2. jQuery基础:下(事件及动画效果)
  3. Spring boot重定向请求
  4. Mongodb java 例子
  5. hpux 11.11 连接HDS 存储,采用HDLM管理带来的麻烦,需重启。
  6. 微课|中学生可以这样学Python(例11.3):tkinter通信录管理系统3
  7. [幽默小故事大道理]励志幽默小故事大道理20个
  8. AltiumDesigner 如何快速查看任意两个元器件或者芯片的布线网络线长!
  9. 数据从阿里云迁移到腾讯云
  10. JAVA 将图片转换成pdf文件
  11. 未来十年的音视频,教科书级别的Android音视频开发教程,学完我成功“挤进”了抖音音视频开发岗
  12. element-ui快速使用(使用element-ui做一个表格)
  13. dash live 播放
  14. 通过js实现图片左右点击图片左右切换效果
  15. ES6(ECMAScript6)学习笔记
  16. 【学堂在线】清华数据结构 OJ小记录
  17. 专访百度云首席架构师林仕鼎:如何突破瓶颈
  18. JAD反编译tricks
  19. libjpeg用法linux压缩,libjpeg学习1:简单使用示例
  20. 【ESP 保姆级教程】疯狂传感器篇 —— 案例:ESP8266 + MQ2 烟雾浓度 + 串口输出

热门文章

  1. Centos添加磁盘分区
  2. 手机拍照能够提取文字内容,这点你知道吗?轻轻松松提高工作效率
  3. liblinear实践初步
  4. 医学图像体渲染照明3 体照明前传之GPU体渲染1
  5. “嵌入式智能化”为医疗设备不断赋能
  6. 作为乙方,如何同甲方客户或者第三方进行方案沟通暗藏玄机
  7. SpringBoot进行多表查询
  8. 将石油和天然气推向边缘
  9. 超级计算机summit存储容量,美国研制世界最强超级计算机Summit,超过神威.太湖...
  10. Android 的Recovery机制【转】