我有这样的代码,例如:
class A {
public:
int x;
A() {
std::cout << "Constructor Called !" << std::endl;
}
A(int y):x(y) {
std::cout << "Constructor Param Called !" << std::endl;
}
A(const A& copy) {
std::cout << "Copy Constructor Called !" << std::endl;
}
}
class B {
public:
A value;
//B(const A& val) : value(val){}
}
int main(){
B b { A(22)};
}
Run Code Online (Sandbox Code Playgroud)
如果我注释掉 B 构造函数,则输出只是“调用构造函数参数”,但如果我取消注释 B 构造函数,则输出将是“调用构造函数参数”和“调用复制构造函数”。我的问题: