防止你写错
【 在 xueyandy (xueyandy) 的大作中提到: 】
: 标 题: 小白请教个关于继承的问题
: 发信站: 水木社区 (Sun Jun 21 17:54:09 2020), 站内
:
: 父类有两个同名方法:A()和A(int c)。
: 当子类不覆盖A()和A(int c)时,子类的实例可以调用A()和A(int c)。
:
: 当子类覆盖了方法A()时,子类的实例调用方法A()的时候没问题,但是调用方法A(int c)的时候出问题了。
:
: 按理说,A(int c)是父类的方法,子类没有覆盖,子类调用A(int c)的时候应该默认调用父类的A(int c),但此时编译器(VS2017)会报错:“A函数不接受1个参数”。
:
: 这是出于什么考虑呢?个人认为,本质上A()和A(int c)是两个独立的方法,A()是否被覆盖为什么会影响A(int c)的调用呢?
:
: 解决办法当然也是有的:把A(int c)也覆盖掉就好了。只是不明白为啥要这么设计?
: --
:
: ※ 来源:·水木社区
http://www.newsmth.net·[FROM: 219.142.145.*]
--
FROM 76.126.252.*