【发布时间】:2020-05-07 02:34:13
【问题描述】:
#include <iostream>
using namespace std;
class A{
public:
A(){
cout<<"a";
}
A(int x){
cout<<"x";
}
};
class B: public A{
public:
B(A ){
cout<<"b";
}
};
int main()
{
B b(10);
return 0;
}
B 的构造函数如何接受整数值? 为什么先调用 A 的参数化构造函数,然后调用默认构造函数?
【问题讨论】:
-
代码的输出是xab
-
我看到允许进行一次隐式转换但为什么要调用A的默认构造函数?
标签: c++ object inheritance constructor parameterized