题库首页 › GESP等级认证(C++) › 题目 25633

下列代码中, d1->work(); 和 d2->work(); 输出不同结果的主要原因是( )。 #include using namespace std; class Device { public: virtual void work() { cout work(); d2->work(); delete d1; delete d2; return 0; }

A:Printer 和 Scanner 使用了相同的构造函数。
B:work() 是虚函数,且 d1 和 d2 实际指向不同派生类对象,发生动态绑定
C:d1 和 d2 是不同的指针变量。
D:程序中使用了 delete 释放对象

正确答案:B

试卷来源:202606 CCF-GESP编程能力等级认证C++六级真题

本卷相关题目

在线做题 同科目题库