数据成员赋值写法:
class test
{
private:
int re;
int im;
public:
test(int r,int i)
{
re = r;
im = i;
}
}
初始列表写法:
class test
{
private:
int re;
int im;
public:
test(int r,int i):re(r),im(i)
{
}
}
两者之间的区别:两者的得到的结果是一样的,但是在性能上存在着很大的差异,初始化列表明显比数据成员变量赋值要快得多。初始化列表在进入构造函数之前就已经会成员变量进行构造,所以在调用构造函数的时候不用像数据成员赋值一样,要先去调用成员变量的构造函数,然后再通过拷贝赋值运算符去赋值。