出自:长沙理工大学-面对对象程序设计C++

已知类A是类B的友元,类B是类C的友元,则() 类A一定是类C的友元 类C一定是类A的友元 类C的成员函数可以访问类B的对象的任何成员 类A的成员函数可以访问类B的对象的任何成员
所谓数据封装就是将一组数据和与这组数据有关操作组装在一起,形成一个实体,这实体也就是() 类 对象 函数体 数据块
基类中的public成员,通过public派生,基在派生类中的可见性为 不可访问 private protected public
设有定义int i;double j=5;,则10+i+j值的数据类型是()int double float 不确定
函数模板template void Func(T,T)不能具有哪种实例化形式? void Finc( int,int) void Finc( bool,bool) void Finc( double,int) void Finc( char,char)
假定AB为一个类,则执行“AB a(2), b[3],*p[4];”语句时调用该类构造函数的次数为() 3 4 5 9
用于标识十六进制前缀或后缀是( ) 元 后缀L或e 前缀零 前缀0x
在int a=3,int *p=&a;中,*p的值是() 变量a的地址值 无意义 变量p的地 3
C++类体系中,不能被派生类继承的有() 常成员函数 构造函数 虚函数 静态成员函数
对于int *pa[5];的描述,正确的是() pa是一个指向数组的指针,所指向的数组是5个int型元素 pa是一个指向某个数组中第5个元素的指针,该元素是int型变量 pa[5]表示某个数组的第5个元素的值 pa是一个具有5个元素的指针数组,每个元素是一个int型指针
下列有关重载函数的说法中正确的是() 重载函数必须具有不同的返回值类型 重载函数参数个数必须相同 重载函数必须有不同的形参列表 重载函数名可以不同
设存在整型变量int x,则下列句与其它三项含义不同的是( ) int* p=&x; int& p=x; int & p=x; int &p=x;
可替换#define PI 3.1415926的语句是( ) float PI 3.1415926; const float PI=3.1415926; const PI(3.1415926); const 3.1415926;
C++允许在结构中定义函数,这些函数称为 静态函数 构造函数 析构函数 成员函数
用于标识十六进制常量的前缀或后缀是 无 后缀L或l 前缀零 前缀0x
对一个向量来说,不正确的叙述是( )。 向量和数组不同,向量的长度是可变的 向量有返回无需再次分配内存就能容纳对象个数的成员函数capacity( ) 如果向量空间已满,当增加一个元素时,向量成员函数capacity( )的长度自动增加
下列程序的输出结果是() #include void main() {int n[][3]={10,20,30,40,50,60}; int (*p)[3]; p=n; cout<<p[0][0]<<","<<*(p[0]+1)<<","<<(*p)[2]<<endl;} 10,30,50 10,20,30 20,40,60 10 30 60
在函数定义中的形参属于() 全局变量 局部变量 静态变量 寄存器变量
如果类A被说明成类B的友元,则() 类B不一定是类A的友元 类B的成员即类A的成员 类A的成员即类B的成员 类A的成员函数不得访问类B的成员
对基类和派生类的关系描述中,错误的是() 派生类是基类的具体化 基类继承了派生类的属性 派生类是基类定义的延续 派生类是基类的特殊化
所谓多态性是指 () 不同的对象调用不同名称的函数 不同的对象调用相同名称的函数 一个对象调用不同名称的函数 一个对象调用不同名称的对象
设有函数模板 template Q Sum(Q x,Q y) {return (x)+(y);} 则下列语句中对该函数模板错误的使用是() Sum(10,2); Sum(5.0,6.7); Sum(15.2f,16.0f); Sum(“AB”,”CD”);
实现两个相同类型数加法的函数模板的声明是() add(T x,T y) T add(x,y) T add(T x,y) T add(T x,T y)
类的构造函数被自动调用执行的情况是在定义该类的() 成员函数时 数据成员时 对象时 友元函数时
构造函数不具备的特征是() 构造函数的函数名与类名相同 构造函数可以重载 构造函数可以设置默认参数 构造函数必须指定类型说明
假定A为一个类,a()为该类公有的函数成员,x为该类的一个对象,则访问x对象中函数成员a()的格式为() x.a x.a() x->a (*x).a()
在编译指令中,宏定义使用哪个指令() #if #include #define
下列程序的输出结果是() #include void main() {int n[][3]={10,20,30,40,50,60}; int (*p)[3]; p=n; cout<<p[0][0]<<","<<*(p[0]+1)<<","<<(*p)[2]<<endl;}
设有定义int i;double j=5;,则10+i+j值的数据类型是() int double float 不确定
不同对象调用同名函数,但导致完全不同行为的现象称为 抽象 封装 继承 多态性
下面关于类模板叙述不正确的是( )。 可以继承 可以有多个析构函数 可以有多个构造函数 可以有多个参数
在编译指令中,宏定义使用的指令是 #include #define #if #else
用于标识十六进制前缀或后缀是( ) 元 后缀L或e 前缀零
友元关系不能() 提高程序的运行效率 是类与类的关系 是一个类的成员函数与另一个类的关系 继承
C++的继承性允许派生类继承基类的() 部分特性,并允许增加新的特性或重定义基类的特性 部分特性,但不允许增加新的特性或重定义基类的特性 所有特性,并允许增加新的特性或重定义基类的特性 所有特性,但不允许增加新的特性或重定义基类的特性
关于this指针使用说法正确的是() 保证每个对象拥有自己的数据成员,但共享处理这些数据的代码 保证基类私有成员在子类中可以被访问。 保证基类保护成员在子类中可以被访问。 保证基类公有成员在子类中可以被访问
若Sample类中的一个成员函数说明如下: void set(Sample& a),则Sample& a的含义是() 指向类Sample的名为a的指针 a是类Sample的对象引用,用来作函数Set()的形参 将a的地址赋给变量Set 变量Sample与a按位与的结果作为函数Set的参数
在类中说明的成public extern cpu register员可以使用关键字的是()
下列选项不是C++关键字的是( ) class void bool inc
下列不是描述类的成员函数的是() 构造函数 析构函数 友元函数 拷贝构造函数
关于类的静态成员函数描述错误的是( ) 不是对象的成员 不能说明为虚函数 不能直接访问非静态函数 在创建对象前不存在
对一个向量来说,不正确的叙述是( )。 向量和数组不同,向量的长度是可变的 向量有返回无需再次分配内存就能容纳对象个数的成员函数capacity( ) 如果向量空间已满,当增加一个元素时,向量成员函数capacity( )的长度自动增加 如果向量空间已满,当需要增加一个元素时,capacity( )的长度每次自动增加一个