以下面的类声明为基础: // base class class Cd { // represents a CD disk private: char performers[50]; char label[20]; in |
问答 |
修改baseDMA-lacksDMA-hasDMA类层次,让三个类都从一个ABC派生而来,然后使用与程序清单13.10相似的程序对结果进行测试。也就是说,它应使用ABC指针数组,并让用户决定要创建的对象类型。在类定义中添加virtual View()方法以 |
问答 |
Benevolent Order of Programmers用来维护瓶装葡萄糖酒箱。为描述它,BOP Portmaster设置了一个Port类,其声明如下: #include <iostream> using namespace std |
问答 |
假设baseDMA ::operator=()函数的返回类型为void,而不是baseDMA &,这将有什么后果?如果返回类型为baseDMA,而不是baseDMA &,又将有什么后果? |
问答 |
创建和删除派生类对象时,构造函数和析构函数调用的顺序是怎样的? |
问答 |
如果基类和派生类定义了同名的方法,当派生类对象调用该方法时,被调用的将是哪个方法? |
问答 |
可以将派生类对象的地址赋给基类指针吗?可以将基类对象的地址赋给派生类指针吗? |
问答 |
可以将派生类对象赋给基类对象吗?可以将基类对象赋给派生类对象吗? |
问答 |
假设定义了一个函数,它将基类对象的引用作为参数。为什么该函数也可以将派生类对象作为参数? |
问答 |
假设定义了一个函数,它将基类对象作为参数(即函数按值传递基类对象)。为什么该函数也可以将派生类对象作为参数? |
问答 |
为什么通常按引用传递对象比按值传递对象的效率更高? |
问答 |
假设Corporation是基类,PublicCorporation是派生类。在假设这两个类都定义了head()函数,ph是指向Corporation类型的指针,且被赋给了一个PublicCorporation对象的地址。如果基类将head()定义为: |
问答 |
下述代码有什么问题? class Kitchen { private: double kit_sq_ft; public: Kitchen() {kit_sq_ft = 0.0; } virtual double a |
问答 |