C++中,爷类跟父类有相同的函数,用子类对象调用时会产生两义性吗?
爷类本身有这个函数。父类本身也有与爷类相同的函数。那么子类如Cc;然后调用这个函数如:c.hello();这样调用的是哪个函数呢?会产生两仪性吗...
爷类本身有这个函数。父类本身也有与爷类相同的函数。
那么子类如 C c ; 然后调用这个函数如: c.hello();
这样调用的是哪个函数呢?会产生两仪性吗 展开
那么子类如 C c ; 然后调用这个函数如: c.hello();
这样调用的是哪个函数呢?会产生两仪性吗 展开
展开全部
继承中,
子类和父类有相同名称,相同参数的函数,
就相当于在子类中已经覆盖了父类的这个函数。
你上边说的例子中,
父类已经把爷类的同名函数给覆盖掉了,
所以如果直接使用,
子类中调用的函数必定是父类中的函数。
不会产生二义性。
子类和父类有相同名称,相同参数的函数,
就相当于在子类中已经覆盖了父类的这个函数。
你上边说的例子中,
父类已经把爷类的同名函数给覆盖掉了,
所以如果直接使用,
子类中调用的函数必定是父类中的函数。
不会产生二义性。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一般来说,如果爷类和父类有相同名称的函数,会将该函数申明为虚函数。
你这个问题,不管这个函数是不是虚函数都会调用父类的函数。因为子类调用某个函数,首先在自己的函数表中查找,如果没有,则到父类中去找;如果找不到,则到父类的父类中去找……
你这个问题,不管这个函数是不是虚函数都会调用父类的函数。因为子类调用某个函数,首先在自己的函数表中查找,如果没有,则到父类中去找;如果找不到,则到父类的父类中去找……
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
c++不允许多继承.所以你子类继承了父类,调用的当然是父类的hello函数.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-07-31
展开全部
子类重写了就调用了子类自己方法.
没重写都是一样继承的父类,没什么区别.
没重写都是一样继承的父类,没什么区别.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询