【发布时间】:2013-03-28 10:56:21
【问题描述】:
让我们考虑以下类
class test1
{
private:
int a;
int b;
public:
test1():a(0),b(0){}
};
class test2
{
private:
int a;
int b;
public:
test2()
{
a=0;
b=0;
}
};
现在,我知道test1() 构造函数是初始化class 的数据成员的正确方法,因为在test2() 中我们执行的是赋值而不是初始化。我的问题是:
- 如果我们执行赋值而不是初始化,可能会出现什么问题?
- 在
test1()构造函数的情况下,编译器不内部执行赋值吗?如果不是,那么这些是如何初始化的?
【问题讨论】:
标签: c++ constructor