继承与求和
请修改编辑器中的代码,完成以下功能:程序中定义了一个基类 Base 和一个派生类 Derived,Base 类包含两个整数成员变量和一个计算它们和的成员函数 sum()。Derived 类继承自 Base 类,并新增一个整数成员变量 mem3,同时定义了同名sum()函数(隐藏基类同名非虚函数)以计算 Base 类的 sum() 值与 mem3 的和。请在代码中补充合适的内容以完成 Derived 类的定义和构造函数的实现,使得程序能够正确运行并输出结果。 程序不需要输入。 输出示例: sum=55
#include<iostream>
using namespace std;
class Base
{
public:
Base(int m1,int m2) {
mem1=m1; mem2=m2;
}
int sum(){return mem1+mem2;}
private:
int mem1,mem2; //基类的数据成员
};
// 派生类Derived从基类Base公有继承
//*************found**************
class Derived: _______________
{
public:
//构造函数声明
Derived(int m1,int m2, int m3);
//sum函数定义,要求返回mem1、mem2和mem3之和
//*************found**************
int sum(){ return _____________+mem3;}
private:
int mem3; //派生类本身的数据成员
};
//构造函数的类外定义,要求由m1和m2分别初始化mem1和mem2,由m3初始化mem3
//**********found**********
____________Derived(int m1, int m2, int m3):
//**********found**********
____________, mem3(m3){}
int main() {
Base a(4,6);
Derived b(10,15,20);
int sum=a.sum()+b.sum();
cout<<"sum="<<sum<<endl;
return 0;
}
控制台
调试终端
