📜  C ++ |继承|问题4

📅  最后修改于: 2021-06-01 03:05:34             🧑  作者: Mango

#include
   
using namespace std;
class P {
public:
   void print()  { cout <<" Inside P"; }
};
   
class Q : public P {
public:
   void print() { cout <<" Inside Q"; }
};
   
class R: public Q { };
   
int main(void)
{
  R r; 
  r.print();
  return 0;
}

(A) P内
(B) Q内部
(C)编译器错误:对print()的调用不明确答案: (B)
说明:在R类中不存在print函数。因此在继承层次结构中对其进行查找。在类P和Q中都存在print(),应该调用它们中的哪一个?这个想法是,如果存在多级继承,则在继承层次结构中线性搜索函数,直到找到匹配的函数。
这个问题的测验

想要从精选的最佳视频中学习和练习问题,请查看《基础知识到高级C的C基础课程》。