是来自基类,一个来自本身,所以派生类是基类的扩展,也是基类的具体化和特殊化,派生类是对基类扩展。B项基类不能继承派生类成员,所以错误。7关于this指针使用说法正确的是()A保证每个对象拥有自己的数据成员,但共享处理这些数据的代码B保证基类私有成员在子类中可以被访问。C保证基类保护成员在子类中可以被访问。D保证基类公有成员在子类中可以被访问。答案:A解析:this指针是隐藏的,可以使用该指针来访问调用对象中的数据。基类的成员在派生类中能否访问,与继承方式有关,与this没有关系。所以选择A项。8所谓多态性是指()A不同的对象调用不同名称的函数B不同的对象调用相同名称的函数
fC一个对象调用不同名称的函数D一个对象调用不同名称的对象答案:B解析:多态性有两种静态多态性和动态多态性,静态多态性是指调用同名函数,由于参数的不同调用不同的同名函数;动态多态性是指不同对象调用同名函数时,由于对象不同调用不同的同名函数。多态性肯定具有相同的函数名,所以选择B项。9一个函数功能不太复杂,但要求被频繁调用,则应把它定义为()A内联函数B重载函数C递归函数D嵌套函数答案:A解析:内联函数特征代码少,频繁调用,执行效率高。重载函数解决统一接口的问题;递归是子程序调用,程序调用要耗费很多空间和时间,循环迭代都比递归有效率得多,递归只是从形式上,逻辑比较简洁。嵌套函数即反复调用,速度较慢。所以选择A项。10下面函数模板定义中不正确的是()AABBCCDD答案:A解析:A项中F是一个返回Q类型的值,而retur
中用返回类型作为返回值错误。所以选择A项。11假设ClassYpublicX,即类Y是类X的派生类,则说明一个Y类的对象时和删除Y类对象时,调用构造函数和析构函数的次序分别为()AXY;YXBXY;XYCYX;XYDYX;YX答案:A解析:派生类构造函数必须对这三类成员进行初始化,其执行顺序:调用基类构造函数;调用子对象的构造函数;派生类的构造函数体。析构函数在执行过程中也要对基类和成员对象进行操作,但它的执行过程与构造函数正好相反,即对派生类新增普通成员进行清理;调用成员对象析构函数,对派生类新增的成员对象进行清理;调用基类析构函数,对基类进行清理,所以选择A项。12适宜采用i
li
e定义函数情况是()A函数体含有循环语句B函数体含有递归语句C函数代码少、频繁调用D函数代码多、不常调用答案:C解析:内联函数具有程序代码少、频繁调用和执行效率高r