下列代码中(Device 为基类,Printer、Scanner 为派生类,work() 为虚函数,d1、d2 为基类指针分别指向两种派生类对象),d1->work(); 和 d2->work(); 输出不同结果的主要原因是( )。
- A. Printer 和 Scanner 使用了相同的构造函数
- B. work() 是虚函数,且 d1 和 d2 实际指向不同派生类对象,发生动态绑定
- C. d1 和 d2 是不同的指针变量
- D. 程序中使用了 delete 释放对象
正确答案:B
正确答案:B
想系统刷完 GESP C++ 1~8 级真题,并查看每道题的逐题精讲?
进入 GESPPASS 开始练习