当前位置:首页 > 【精品】C++面向对象程序设计题库(含答案)
static int date;};
将静态数据成员data初始化为0的语句是 。
48. 假定p所指对象的值为25,p+1所指对象的值为46,则执行“(*p)++;”语句后,p所指对象的值为 。
49. 若在类的定义体中只给出了一个成员函数的原型,则在类外给出完整定义时,其函数名前必须加上类名和两个________分隔符。
50. 若需要把一个函数“void F( );”定义为一个类AB的友元函数,则应在类AB的定义中加入一条语句: 。
51. 若要把类外定义的成员函数规定为内联函数,则必须把________关键字放到函数原型或函数头的前面。
52. (为了避免在调用成员函数时修改对象中的任何数据成员,则应在定义该成员函数时,在函数头的后面加上________关键字。
53. 程序段i=5;j=0;j=++i+j;输出结果为j= 。 54. 类定义中,既包含数据成员,也包含________成员。
55. 假定AB为一个类,则执行“AB a[10];”语句时,系统自动调用该类的构造函数的次数为 ,其构造函数名是 。
56. 假定一个类对象数组为A[N],当离开它的作用域时,系统自动调用该类析构函数的次数为________。
57. 已知数组a 中的元素个数为n,下列语句的作用是将下标为i 的元素移动到下标为i,1 的单元,其中1?i,n。例如,当n=4,a 中原有数据为1,2,3,4 时,则移动后a中元素为2,3,4,4。请将语句补充完整:
for(int i=0;i 59. 带有 的类称为抽象类,抽象类的特征是不能声明一个抽象类的 ,但可以声明一个抽象类的指针或引用。 60. 若表达式(x+(y-z)*(m/n))+3中的变量均为double型,则表达式值的类型为 。 61. 设A为test类的对象且赋有初值,则语句test B(A); 表示 。 62. 利用“对象名.成员变量”形式访问的对象成员仅限于被声明为 的成员;若要访问其他成员变量,需要通过 函数或 函数。 63. 是指同样的消息被不同类型的对象接收时导致不同的行为。 64. 在继承机制下,当对象消亡时,编译系统先执行 的析构函数,然后才执行派生类中子对象类的析构函数,最后执行 的析构函数。 65. 类中构造函数有 个,析构函数有 个。 66. 循环语句:for(int i=50; i>20; i-=2) cout< 67. 类是用户定义的类型,具有类类型的变量称为 。当建立一个新对象时,程序自动调用 。 68. 有如下类定义: class Sample{ public: Sample(); ~Sample(); private: static int date;}; 将静态数据成员data初始化为0的语句是 。 69. 继承发生在利用现有类派生新类时,其中现有类称为 ,或父类;新类称 为 ,或子类。 70. 利用“对象名.成员变量”形式访问的对象成员仅限于被声明为 的成员;若要访问其他成员变量,需要通过 函数或 函数。 71. 是指同样的消息被不同类型的对象接收时导致不同的行为。 二、 单项选择题(每小题2分,共20分) 类中定义的成员默认为( )访问属性。 A.public B. private C. protected D. friend 如果一个函数无返回值,定义时它的函数类型应是()。 A(任意 B(int C(void D(无 下面的函数声明中,( )是“void BC(int a,int b);”的重载函数。 A(int BC(int x,int y); B(void BC(int a,char b); C(float BC(int a,int b,int c=0); D(int BC(int a,int b=0); 与C语言printf(“Hello word\\n”) ;语句功能相同的C++语句是( )。 A.cout>>”Hello word\\n” B.cin>>” Hello word\\n” C. cout<<” Hello word\\n” D.cin<<” Hello word\\n” 假定要对类AB定义加号操作符重载成员函数,实现两个AB类对象的加法,并返回相加结果,则该成员函数的声明语句为( )。 A. AB operator+(AB & a , AB & b) B. AB operator+(AB & a) C. operator+(AB a) D. AB & operator+( ) 以下不正确的语句是( )。 A(if(x>y); B(if(x=y)&&(x!=0) x+=y; C(if(x!=y)cin>>x;else cin>>y; D(if(x 下列说法正确的是( )。 A(是死循环 B(循环执行两次 C(循环执行一次 D(有语法错误 下面函数( )的表示方法说明它使用对象的引用作为参数。 A. test(pt *p) B.test(pt p) C.test(pt &p) D.test(const P) 下面叙述不正确的是( )。 A( 基类的保护成员在派生类中仍然是保护的 B( 基类的保护成员在公有派生类中仍然是保护的 C( 基类的保护成员在私有派生类中是私有的 D( 对基类成员的访问必须是无两义性 下列运算符中,( )运算符在C++中不能重载。 A. ,: B. + C. - D.〈= 在C++中,打开一个文件就是将这个文件与一个( )建立关联;关闭一个文件就是取消这种关联。 A. 流 B. 类 C. 结构 D. 对象 对while、do…while循环结构,下面说法正确的是( )。 A(只是表达形式不同 B(do…while结构中的语句至少执行一次 C(while结构中的语句至少执行一次 D(条件成立时,它们有可能一次也不执行 关于函数的调用下面不正确的是( )。 A( 由于程序总是从主函数开始,所以函数的调用总是在主函数和其他函数之间进行 B( 函数的调用可以在任意函数之间进行,只要有需要 C( 一个函数可以自己调用自己
共分享92篇相关文档