C++学习(17)

 1 //类的成员变量的二义性问题
 2 #include<iostream.h>
 3 
 4 class A{
 5     protected:
 6         int a;
 7     public:
 8         A(int aa){
 9             a=aa;
10         }
11         ~A(){}
12 };
13 
14 class B1:public A{
15     protected:
16         int b1;
17     public:
18         B1(int aa,int bb1):A(aa){
19             b1=bb1;
20         }
21         ~B1(){}
22 };
23 
24 class B2:public A{
25     protected:
26         int b2;
27     public:
28         B2(int aa,int bb2):A(aa){
29             b2=bb2;
30         }
31         ~B2(){}
32 };
33 
34 class C:public B1,public B2{
35     protected:
36         int c;
37     public:
38         C(int aa1,int aa2,int bb1,int bb2,int cc):B1(aa1,bb1),B2(aa2,bb2){
39             c=cc;
40         }
41         ~C(){}
42         void PrintA(){
43             //cout<<"a="<<a<<endl;
44             cout<<"B1::a="<<B1::a<<endl;
45             cout<<"B2::a="<<B2::a<<endl;
46         }
47 };
48 
49 int main(){
50     C myC(1,2,3,4,5);
51     myC.PrintA();
52     return 0;
53 }

猜你喜欢

转载自www.cnblogs.com/Tobi/p/9249838.html