选择题   有如下程序:
    #include<iostream>
    using namespace std;
    class Base{
    public:
    virtual void function1(){cout<<'0';}
    void function2(){cout<<'1';}
    };
    class Derived:public Base{
    public:
    void function1(){cout<<'2';}
    void function2(){cout<<'3';}
    };
    int main(){
    Base*p=new Derived();
    p->function1();
    p->function2();
    return 0;
    }
    运行时的输出结果是______。
 
【正确答案】 B
【答案解析】基类的指针可以指向派生类的对象,但是反过来,派生类的指针是不允许指向基类的对象的。通过该指针也只能访问派生类中从基类继承来的公有成员,不能访问派生类中新增的成员,除非通过强制类型转换将基类的指针转换为派生类的指针。