父类和子类出现重名变量

父类和子类出现重名变量

1620839080609

1620839161158

1620839167367

1620839206345

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#define  _CRT_SECURE_NO_WARNINGS 
#include <iostream>

using namespace std;

class Parent
{
public:
Parent(int a)
{
this->a = a;
}

int a;
};

class Child :public Parent
{
public :
Child(int a, int aa) : Parent(aa)
{
this->a = a; //让Child 的a = a, 让父亲的a = aa
}

void print()
{
cout << "a = " << a << endl; //默认是使用 当前类的重名的变量
cout << "Parent::a = " << Parent::a << endl; //如果想访问父类中的重名变量 需要加上父类的作用域
}

int a;
/*
a ---> Paretn::a
*/
};

int main(void)
{
Child c(10, 100);

c.print();

return 0;
}