6-3 虚函数的应用
分数 10
全屏浏览题目
切换布局
作者 李廷元
单位 中国民用航空飞行学院
补充下列代码,使得程序的输出为:
A:3
A:15
B:5
3
15
5
类和函数接口定义:
参见裁判测试程序样例中的类和函数接口。
裁判测试程序样例:
#include <iostream>
using namespace std;
class CMyClassA {
int val;
public:
CMyClassA(int);
void virtual print();
};
CMyClassA::CMyClassA(int arg) {
val = arg;
printf("A:%d\n", val);
}
void CMyClassA::print() {
printf("%d\n", val);
return;
}
/* 在这里填写代码 */
int main(int argc, char** argv) {
CMyClassA a(3), *ptr;
CMyClassB b(5);
ptr = &a;
ptr->print();
a = b;
a.print();
ptr = &b;
ptr->print();
return 0;
}
输入样例:
None
输出样例:
A:3
A:15
B:5
3
15
5
来源:
openjudge.cn
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
不多说了
class CMyClassB :public CMyClassA
{
private:
int val;
public:
CMyClassB(int b):CMyClassA(3*b)
{
val = b;
printf("B:%d\n", val);
}
void virtual print()
{
printf("%d\n", val);
return;
}
};