以下程序的执行结果为【 】。   #include<iostream>   using namespace std;  class base   {    public:     virtual void who( )    {     cout < <

admin2010-03-29  27

问题 以下程序的执行结果为【  】。
  #include<iostream>
  using namespace std;
 class base
  {
   public:
    virtual void who( )
   {
    cout < < "base class" < <end1;
   };
   class derivel:public base
   {
    public:
     void who( )
    {
     cout < <"derivel clas

选项

答案base class    derivel class    derive2 class

解析 类base含有虚函数who( ),该类派生出derivel类和derive2类,两个派生类中都有虚函数who( )的定义。在main( )函数中定义了一个指向base类的指针,它也被允许指向其派生类。在执行过程中,不断改变它所指的对象,当p->who( )时就能调用不同的版本。这是因为使用了虚函数,因而进行动态联编。注意:应掌握静态联编的使用方法。
转载请注明原文地址:https://kaotiyun.com/show/JQjp777K
0

最新回复(0)