复制和基构造函数不初始化C++

Copy and Base Constructor don't initialize C++

本文关键字:初始化 C++ 构造函数 复制      更新时间:2023-10-16

当使用默认构造函数参数调用构造函数时,不会构造任何对象。

    class cl{
private:
public:
    cl(){cout << "Default used" << endl;};
    cl(const cl & cl_object) {cout << "Copy used" << endl;};
    cl & operator=(const cl & cl_object){cout << "Assignment used" << endl; return *this;};
};

当我写:

cl(cl()); 

不显示任何消息。

问题:1)为什么没有构造对象?2) 为什么不使用复制构造函数?

最烦人的解析

cl(cl());

被解析为函数声明。