C++学习记录-面向对象-同名成员的处理
C++学习记录-面向对象-同名成员的处理
一、
当子类和父类存在同名的成员(属性,方法等)时,直接访问会默认访问子类自己的成员,想要访问继承自父类的成员则要加作用域
- 子类对象可以直接访问子类的同名成员
- 子类对象加作用域可以访问到继承自父类的同名成员
- 子类和父类有同名的函数,子类会隐藏父类的同名函数,加作用域可以访问到
二、
示例:
创建一个类
1 | class chara { |
创建一个类继承自chara
1 | class qyn :public chara { |
实例化两个类:
1 | chara p1; |
测试开始:
1 | cout << p2.name << endl; |
运行结果(访问的是子类自己的成员):
琪亚娜
天火圣裁
1 | cout << p2.chara::name << endl; |
运行结果(访问的是子类中继承自父类的成员):
角色
新手武器
1 | p2.printinfo(10); |
1 | p2.chara::printinfo(10); |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 星辰微光的博客!





