TsinghuaX+00740043_2X C++程序设计进阶 C7-3

// C7-3.cpp : 定义控制台应用程序的入口点。
//

//#include "stdafx.h"

#include <iostream>
using namespace std;

struct Base1
{
	int x;
	Base1(int x);
};

struct Base2
{
	int x;
	Base2(int x);
};

struct Derived :public Base1, public Base2
{
	int x;
	Derived(Base1& a, Base2& b);
};
//请实现Base1,Base2, Derived的构造函数
Base1::Base1(int x){
	this->x = x;
}

Base2::Base2(int x){
	this->x = x;
}
Derived::Derived(Base1& a, Base2& b):Base1(a.x),Base2(b.x){//派生类构造时间要把基类构造函数初始化了,不然会有问题。
	this->x = a.x + b.x;
}

int main()
{
	int x, y;
	cin >> x >> y;
	Base1 a(x);
	Base2 b(y);
	Derived d(a, b);
	cout << d.Base1::x << "+" << d.Base2::x << "=" << d.x << endl;
	return 0;
}

  

原文地址:https://www.cnblogs.com/zangkuo/p/5744935.html