1 #include <iostream>
2 using namespace std;
3
4 class MyClass1
5 {
6 public:
7 int a;
8 void Show(bool bSwitch)
9 {
10 cout << "a=" << a << endl;
11 }
12 private:
13 int b;
14 };
15
16 class MyClass2 : public MyClass1
17 {
18 public:
19 int c;
20 void Show()
21 {
22 cout << "c=" << c << endl;
23 }
24
25 void Show(bool bSwitch) //调用父类重名函数,这里是推荐写法
26 {
27 MyClass1::Show(bSwitch);
28 }
29 private:
30 int d;
31 };
32
33
34 int main(int argc, char *argv[])
35 {
36 MyClass1 a;
37 a.a = 10;
38 cout << "a.Show():";
39 a.Show(1);
40
41 MyClass2 b;
42 b.a = 20;
43 b.c = 30;
44 cout << "b.Show():";
45 b.Show();
46 cout << "b.Show(1):";
47 b.Show(1); //这里是推荐写法
48 cout << "b.MyClass1::Show(1):";
49 b.MyClass1::Show(1);//虽然可以实现,但是不推荐这种写法
50 return 0;
51 }