应当将指针变量用“==”或“!=”与 NULL 比较

应当将指针变量用“==”或“!=”与 NULL 比较。

指针变量的零值是“空”(记为 NULL)。

尽管 NULL 的值与 0 相同,但是两者意义不 同。

假设指针变量的名字为 p,它与零值比较的标准 if 语句如下: if (p == NULL) // p 与 NULL 显式比较,强调 p 是指针变量 if (p != NULL) 不要写成 if (p == 0) // 容易让人误解 p 是整型变量 if (p != 0) 或者 if (p) // 容易让人误解 p 是布尔变量 if (!p)

 

 1 #include <iostream>
 2 
 3 /* run this program using the console pauser or add your own getch, system("pause") or input loop */
 4 using namespace std;
 5 //定义最低层基类,它作为其他类的基类
 6 class First {
 7     int val1;
 8 public:
 9     First(void) {
10         cout<<"The First initialized"<<endl;
11     }
12 };
13 //定义派生类,它作为其他类的基类
14 class Second :public First {   
15     int val2;
16 public:
17     Second(void) {
18         cout<<"The Second initialized"<<endl;
19     }
20 };
21 //定义最上层派生类
22 class Three :public Second {
23     int val3;
24 public:
25     Three() {
26         cout<<"The Three initialized"<<endl;
27     }
28 };
29 //定义各基类的对象,测试构造函数的执行情况
30 //定义各基类的对象,测试构造函数的执行情况
31 
32 int main(int argc, char** argv) {
33     
34         cout<<"First f1;"<<endl;
35     First f1;
36     cout<<"Second s1;"<<endl;
37     Second s1;
38     cout<<"Three t1;"<<endl;
39     Three t1;
40     return 0;
41 }

 

posted @ 2018-08-03 12:35  borter  阅读(363)  评论(0编辑  收藏  举报