在构造函数中调用构造函数

来源:互联网 发布:捜淘宝网长袖连衣裙 编辑:程序博客网 时间:2024/04/30 22:17

struct CLS
{
    int m_i;
    CLS( int i ) : m_i(i) {}
    CLS()
    {
        CLS(123);
    }
};
CLS obj;
cout << obj.m_i << endl;

 

 

输出不是123,在默认构造函数内部再调用带参的构造函数属用户行为而非编译器行为,亦即仅执行函数调用,而不会执行其后的初始化表达式。只有在生成对象时,初始化表达式才会随相应的构造函数一起调用。

原创粉丝点击