|
(单选题) 1: 假定一个类的构造函数为A(int aa,int bb) {a=aa--;b=a*bb;},则执行A x(4,5);语句后,x.a和x.b的值分别为()。
A: 3和15
B: 4和20
C: 5和4
D: 20和5
(单选题) 2: C++源程序的扩展名为()
A: .c
B: .cpp
C: .c++
D: .cplus
(单选题) 3: 在双向链表存储结构中,删除p所指的结点时须修改指针()。
A: p->next->prior=p->prior; p->prior->next=p->next;
B: p->next=p->next->next; p->next->prior=p;
C: p->prior->next=p; p->prior=p->prior->prior;
D: p->prior=p->next->next; p->next=p->prior->prior;
(单选题) 4: C++所有输入和输出流的基类是()。
A: stream.h
B: iostream.h
C: cin和cout
D: ios
(单选题) 5: 类B是类A的公有派生类,类A和类B中都定义了虚函数func(),p是一个指向类A对象的指针,则p->A::func()将()。
A: 调用类A中的函数func()
B: 调用类B中的函数func()
C: 根据p所指的对象类型而确定调用类A中或类B中的函数func()
D: 既调用类A中函数,也调用类B中的函数
(单选题) 6: 实现两个相同类型数加法的函数模板的声明是()。
A: add(T x,T y)
B: T add(x,y)
C: T add(T x,y)
D: T add(T x,T y)
(单选题) 7: 在面向对象的程序设计中,首先在问题域中识别出若干个 ()。
A: 函数
B: 类
C: 文件
D: 过程
(单选题) 8: 如果从原有类定义新类可以实现的是()。
A: 信息隐藏
B: 数据封装
C: 数据抽象
D: 继承机制
(单选题) 9: 下面关于模板的描述,错误的是()。
A: 函数模板和类模板的参数可以是任意的数据类型
B: 类模板不能直接使用,必须先实例化为相应的模板类.然后定义了模板类的对象后才能使用
C: 函数模板不能直接使用,需要实例化为模板函数后才能使用
D: 类模板的成员函数都是模板函数
(单选题) 10: 静态成员函数没有()。
A: 返回值
B: 返回类型
C: 指针参数
D: this指针
(单选题) 11: C++程序从()开始执行
A: 预处理命令
B: 第一个函数的第一条语句
C: 第一条语句
D: main函数的第一条语句
(单选题) 12: 说明语句在某一个类定义、函数定义或复合语句中的变量被称为()
A: 全局变量
B: 局部变量
C: 形式变量
D: 实际变量
(单选题) 13: 进行文件操作时需要包含头文件()。
A: iostream.h
B: stdio.h
C: fstream.h
D: stdlib.h
(单选题) 14: 在int a=3,int *p=&a;中,*p的值是()
A: 变量a的地址值
B: 变量p的地址值
C: 3
D: 无意义
(单选题) 15: 若有语句char a[]= "test";则数组a[]中共有()个变量。
A: 3
B: 4
C: 5
D: 0
(单选题) 16: 关于类模板的说法正确的是()。
A: 类模板的主要作用是生成抽象类
B: 类模板实例化时,编译器将根据给出的模板实参生成一个类
C: 在类模板中的数据成员具有同样类型
D: 类模板中的成员函数没有返回值
(单选题) 17: 函数调用自身被称为()。
A: 继承
B: 重载
C: 递归
D: 多态
(单选题) 18: 已知:p是一个指向类A数据成员m的指针,A1是类A的一个对象。如果要给m赋值为5,正确的是()。
A: A1.p=5;
B: A1->p=5;
C: A1.*p=5;
D: *A1.p=5;
(判断题) 1: 在C++中,可以通过在当前类中将另一个类作为自己的友元类,来在另一个类中访问当前类的私有成员。
A: 错误
B: 正确
(判断题) 2: 一个函数中可以有多于一个return语句。
A: 错误
B: 正确
|
|