【发布时间】:2019-10-16 11:59:49
【问题描述】:
我遇到了错误,不知道出了什么问题
我试过省略构造函数。
我收到以下错误:
在构造函数'B::B(int, int)'中:没有匹配函数调用'A::A()'
注意候选人是:
A::A(const A&)
A::A(int, int)
#include <iostream>
using namespace std;
class A{
public:
int a;
int b;
A(int a1, int b1){
a=a1; b = b1;
}
};
class B : public A {
public:
int c;
int d;
int e;
B(int c1=10, int d1=20){
c=c1; d=d1;
e = a * b;
}
void show(){
cout <<"a = "<<a<<endl;
cout <<"b = "<<b<<endl;
cout <<"c = "<<c<<endl;
cout <<"d = "<<d<<endl;
cout <<"e = "<<e<<endl;
}
};
int main() {
A a(2,2);
B b;
b.show();
return 0;
}
【问题讨论】:
-
你认为 b.a 和 b.b 的值是多少?
标签: c++ inheritance