// ============================================================================
//  p1c04_07_09  —  4.7.6.1 多继承概念
//  来源：川大 C++/LinuxC wiki「02.Qt方向」
//  说明：本文件由 gen_part1.py 合并页面中的教学片段而成。每个片段用
//        // --- 原文片段 [pageId:blockIdx] --- 标注出处。
//        已做最小修正（笔误/平台移植），详见 docs/ERRATA.md。
// ============================================================================

#include <iostream>
using namespace std;

// --- 原文片段 [58954461:8]  4.7.6.1 多继承概念 ---
class Base1{
public:
	void func1_1(){ cout << "Base1::func1_1" << endl; }
};
class Base2{
public:
	void func1_1(){ cout << "Base2::func1_1" << endl; }
	void func2(){ cout << "Base2::func2" << endl; }
};
//派生类继承Base1、Base2
class Derived : public Base1, public Base2{};
int main(){

	Derived derived;
	//func1是从Base1继承来的还是从Base2继承来的？
	//derived.func1_1(); 
	derived.func2();

	//解决歧义:显示指定调用那个基类的func1
	derived.Base1::func1_1(); 
	derived.Base2::func1_1();

	return EXIT_SUCCESS;
}

// --- main ---
