刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!

单选题

采用面向对象程序设计语言C++/Java进行系统实现时,定义类S及其子类D。若类S中已经定义了一个虚方法int fun(int a,int b) ,则方法(44)不能同时在类S中。D中定义方法int fun(int a,int b) ,这一现象称为(45)。  


A
int fun(int x,double y)

B
 int fun(double a,int b)   

C
double fun(int x,double y)
D
int fun(int x,int y)  
使用微信搜索喵呜刷题,轻松应对考试!

答案:

D

解析:

:在同一类中不能定义两个名字相同、参数个数和类型都相同的函数,这会被视为重复定义。而题目中,类S已经定义了一个虚方法int fun(int a,int b),所以在类S中不能再次定义方法int fun(int x,int y),因为这两个方法的参数类型和个数都是相同的。虚函数的作用是在派生类中允许重新定义与基类同名的函数,但这并不意味着可以在同一类的相同参数列表下重复定义。因此,选项D中的方法不能在类S中定义。这种现象称为函数重载(Overloading)的规则限制。其他选项如A、B、C虽然参数类型有所不同,但在同一类中是可以被允许的,因为它们满足函数重载的规则。

创作类型:
原创

本文链接:采用面向对象程序设计语言C++/Java进行系统实现时,定义类S及其子类D。若类S中已经定义了一个虚

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。

让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!

分享考题
share