默认构造函数是未提供显式初始化时,用来创建对象的构造函数。
class T
{
private:
enum {R=10];
int p;
char a[R];
...
public:
...
};
像T这个类,假定并没有显式初始化。
编译器会自动提供默认构造函数,默认构造函数并不做任何工作。
默认构造函数并不初始化p和字符串a。
他只是创建一个类对象,就像创建了x,但是并没有给他提供值给他一样。
int x;
也就是说如果像这样声明一个T的对象T tclass;
编译器会创建这个tclass类对象,但是其中的p和char是未知的。
这样理解对不对啊? |