若有以下程序: #include <iostream> using namespace std; class Base { public: void who() { cout<<"cl

admin2013-05-30  29

问题 若有以下程序:
   #include <iostream>
   using namespace std;
   class Base
   {
   public:
      void who()
      {
         cout<<"class  Base"<<end1;
      }
   };
   class Derivedl  : public Base
   {
   public:
      void who()
      {
         cout<<"class Derivedl"<<end1;
      }
   };
   class Derived2  : public Base
   {
   public:
      void who()
      {
         cout<<"class Derived2"<<end1;
      }
   };
   int main()
    {
      Base *p;
      Derivedl obj1;
      Derived2 obi2;
      p=&obj 1;
      p=&obj2;
      p->who ( );
      return 0;
   }
   则该程序运行后的输出结果是【  】。

选项

答案class Derived2

解析 本题考核对象指针的应用。主函数中定义了一个Base类对象指针p,然后逐步被赋值为obj1和obj2,最后通过对象指针p调用函数who(),也即调用Derived2中的函数who(),输出class Derived2。
转载请注明原文地址:https://kaotiyun.com/show/qhNp777K
0

最新回复(0)