问题
单项选择题
若有如下程序:
#include<iostream>
using namespace std;
class TestClass
public:
void who() cout<<"TestClass"<<endl;
;
class TestClass1:public TestClass
public:
void who()cout<<"TestClass1"<<endl;
;
int main()
TestClass *p;
TcstClass1 obj1;
p=&obj1;
p->who();
return 0;
则该程序运行后的输出结果是( )。
A.TestClass1
B.TestClass
C.0
D.无输出
答案
参考答案:A
解析: 程序中的TestClas1为TestClass的派生类,主函数main中定义TestClass对象*p,TestClass1对象obj1,然后p引用obj1,执行p->who()则是调用基类中的who函数,输出TcstClass。