NULL和nullptr的区别


 

//error C2665: “go”: 2 个重载中没有一个可以转换所有参数类型

 

 1 #include <iostream>
 2 
 3 void go(int num)
 4 {
 5     std::cout << "go num" << std::endl;
 6 }
 7 
 8 void go(char *p)
 9 {
10     std::cout << "go p" << std::endl;
11 }
12 
13 void main()
14 {
15     void *p = NULL;
16 
17     go(p);//error C2665: “go”: 2 个重载中没有一个可以转换所有参数类型
18 }

 

NULL是0

nullptr是空指针void

 

 1 #include <iostream>
 2 
 3 void go(int num)
 4 {
 5     std::cout << "go num" << std::endl;
 6 }
 7 
 8 void go(void *p)
 9 {
10     std::cout << "go p" << std::endl;
11 }
12 
13 void main()
14 {
15     void *p = NULL;
16 
17     go(p);//go p
18 
19     go(NULL);//go num
20 
21     go(nullptr);//go p
22 
23     system("pause");
24 }

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM