注意点:
1:初始化int a = 3; 或int a(3);
2:if(MakeDate() || MakeTime()):如果MakeDate成功,MakeTime将不执行;
3:while(--i && --j):如果--i等于0,--j将不执行;
4:if中声明变量:if(int x = GetDate()){ cout << x;};
5:不能用goto语句跳过包含隐式或显示初始化变量(类)的声明语句。C++在进行类对象构造时,要对其进行复杂的初始化,在撤销类对象是,还要做必要的析构处理。如果跳过某个对象的初始化过程,那么在它被撤销时,编译器会认为该对象已经被初始化过了,而自动调用析构过程,这样就会引发不可预料的后果。例如下面的例子将会出现编译错误,因为goto语句跳过了对变量t的初始化,只要需要初始化的变量在作用域内,就必须保证已经对其进行了初始化:
class T{
};
int main()
{
int a(3);
if (a == 3)
goto a_3;
T t;
a_3:
return 0;
}
6:
7:
8:
9:
10:
11:
12:
13: