作业辅导网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

作业辅导、毕业论文、学业辅导,请加qq2762169544(微信:2762169544)
查看: 1185|回复: 0
打印 上一主题 下一主题

15春学期《面向对象程序设计》在线作业

[复制链接]

4万

主题

4万

帖子

4万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
48438
跳转到指定楼层
楼主
发表于 2015-8-25 22:09:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
需要购买此门答案请加qq2762169544(微信:2762169544)
15春学期《面向对象程序设计》在线作业
试卷总分:100       测试时间:--
单选题 判断题  


一、单选题(共 35 道试题,共 70 分。)V 1.  类MyClass的定义如下: class MyClass { public: MyClass() { value = 0;} SetVariable(int i) { value = i; } private: int value; } 则对下列语句序列正确的描述是()。 MyClass *p,my; p=&my;
A. 语句p=&my;是把对象my赋值给指针变量p
B. 语句MyClass *p,my;会调用两次类MyClass的构造函数
C. 对语句 *p.SetVariable(5)的调用是正确的
D. 语句p->SetVariable(5)与语句my.SetVariable(5)等价
      满分:2  分
2.  友元重载运算符obj1>obj2被C++编译器解释为()。
A. operator>(obj1,obj2)
B. >(obj1,obj2)
C. obj1.operator>(obj2)
D. obj2.operator>(obj1)
      满分:2  分
3.  下面关于私有继承方式的论述中错误的是()。
A. 基类中的私有成员对其对象不可见
B. 基类中的私有成员对其派生类不可见
C. 基类中的公有成员对其派生类可见
D. 基类中的保护成员对其派生类不可见
      满分:2  分
4.  类的默认的无参构造函数()。
A. 在任何情况下都存在
B. 仅当未定义无参构造函数时存在
C. 仅当未定义有参构造函数时存在
D. 仅当未定义任何构造函数时存在
      满分:2  分
5.  若类中有指针成员变量,则应编写(),使得在对象销毁时能够自动调用该函数释放指针成员变量所指向的内存空间。
A. 友元函数
B. 虚函数
C. 构造函数
D. 析构函数
      满分:2  分
6.  下列关于拷贝构造函数的描述中,错误的是()。
A. 一个类可以定义多个拷贝构造函数
B. 若未定义拷贝构造函数,则系统会提供一个默认拷贝构造函数
C. 当类中有指针成员变量时,通常要为这个类定义一个拷贝构造函数来实现深拷贝
D. 拷贝构造函数中的参数按引用方式传递
      满分:2  分
7.  下列关于虚函数的说明中,正确的是()。
A. 从虚基类继承的函数都是虚函数
B. 虚函数不得是静态成员函数
C. 只能通过指针或引用调用虚函数
D. 抽象类中的成员函数都是虚函数
      满分:2  分
8.  已知“int a=10,b=8;int &r=a; r=b;cout<<a<<","<<b<<","<<r;”,则输出为()。
A. 10,8,10
B. 10,8,8
C. 8,8,10
D. 8,8,8
      满分:2  分
9.  在一个string类对象表示的字符串中插入新字符,应该使用string类的()函数。
A. assign
B. insert
C. swap
D. find
      满分:2  分
10.  有如下类声明: class Sample { int x; }; 则Sample类成员x是Sample类的()。
A. 公有数据成员
B. 保护数据成员
C. 私有数据成员
D. 以上选项都不正确
      满分:2  分
11.  运算符重载的目的是()。
A. 提高程序的效率
B. 提高代码复用能力
C. 简化程序,减少目标代码
D. 使程序代码直观易读
      满分:2  分
12.  执行语句“string str("abc");”时,系统会自动调用string类的构造函数()。
A. string()
B. string(const char *s)
C. string(const string &str)
D. string(size_type n, char c)
      满分:2  分
13.  交换两个string类对象所表示的字符串的内容,应该使用string类的()函数。
A. assign
B. insert
C. swap
D. find
      满分:2  分
14.  基类的()在私有继承时在派生类中为私有成员函数,在公有和保护继承时在派生类中为保护成员函数。
A. 私有成员函数
B. 保护成员函数
C. 公有成员
D. 保护数据成员
      满分:2  分
15.  多继承的构造函数顺序可分为如下4步: ①所有非虚基类的构造函数按照它们被继承的顺序构造。 ②所有虚基类的构造函数按照它们被继承的顺序构造。 ③所有子对象的构造函数按照它们声明的顺序构造。 ④派生类自己的构造函数体这四个步骤的正确顺序是()。
A. ④③①②
B. ②④③①
C. ②①③④
D. ③④①②
      满分:2  分
16.  已知“float *p; p=new float[2];”,若分配成功,则指针p在堆中获得的字节数为()。
A. 2
B. 4
C. 8
D. 不确定
      满分:2  分
17.  在一个C++源文件中使用了cin和cout,那么在这个源文件中必须包含()文件。
A. iostream
B. fstream
C. stdio.h
D. stdlib.h
      满分:2  分
18.  虚函数必须是类的()。
A. 友元函数
B. 成员函数
C. 构造函数
D. 析构函数
      满分:2  分
19.  在一个string类对象表示的字符串中查找子串,应该使用string类的()函数。
A. assign
B. insert
C. swap
D. find
      满分:2  分
20.  有关重载函数的描述正确的是()。
A. 函数名相同的函数就是重载函数
B. 函数名相同但返回值类型不同的函数就是重载函数
C. 函数名相同但参数个数或类型不同的函数就是重载函数
D. 函数功能相同的函数就是重载函数
      满分:2  分
21.  单目运算符作为类成员函数重载时()。
A. 有形参
B. 没有形参
C. 有实参
D. 以上都不正确
      满分:2  分
22.  下列关于运算符重载正确的是()。
A. 运算符重载可以改变运算符的操作数个数
B. 运算符重载可以改变运算符的优先级
C. 运算符重载可以改变运算符的结合性
D. 运算符重载不可以改变语法结构
      满分:2  分
23.  使用string类,必须在程序中包含头文件()。
A. string.h
B. string
C. cstring.h
D. cstring
      满分:2  分
24.  变量的引用,其含义是指该变量的()。
A. 值
B. 类型
C. 别名
D. 地址
      满分:2  分
25.  下面对静态数据成员的描述中,正确的是()。
A. 静态数据成员可以在类体内进行初始化
B. 静态数据成员不可以被该类的对象调用
C. 静态数据成员不能受private控制符的作用
D. 静态数据成员可以直接用类名访问
      满分:2  分
26.  一个类的友元函数或友元类能够通过成员操作符访问该类的()。
A. 私有成员
B. 保护成员
C. 公有成员
D. 所有成员
      满分:2  分
27.  下列虚基类的声明中,正确的是()。
A. class virtual B:public A
B. virtual class B:public A
C. class B: public A virtual
D. class B: virtual public A
      满分:2  分
28.  下列关于赋值运算符重载的说法中正确的是()。
A. 返回值一般是以引用方式返回的对象,而函数体中总是用语句“return *this;”返回this指针所指向的对象
B. 赋值运算符只能以非成员函数的方式重载
C. 赋值运算符既可以以成员函数的方式重载,又可以以非成员函数的方式重载
D. 以上均不正确
      满分:2  分
29.  在公有派生情况下,有关派生类对象和基类对象的关系,下列叙述不正确的是()。
A. 派生类的对象可以直接访问基类的所有成员
B. 派生类的对象可以初始化基类的引用
C. 派生类的对象不可以直接访问基类中的私有成员
D. 派生类的对象的地址可以赋给指向基类的指针
      满分:2  分
30.  已知“float *p; p=new float[2];”,若要释放p所指向的堆中的这些字节,下列语句正确的是()。
A. delete p;
B. delete p[];
C. delete []p;
D. delete p[2];
      满分:2  分
31.  程序在调用重载函数时,根据()区分到底要调用哪个函数。
A. 函数名
B. 返回值类型
C. 参数个数和类型
D. 以上都可以
      满分:2  分
32.  假定MyClass为一类,执行MyClass a,b(2),*p[2];语句时会自动调用该类构造函数()次。
A. 2
B. 3
C. 4
D. 5
      满分:2  分
33.  下面关于类的成员函数描述不正确的是()。
A. 静态成员函数内可以直接访问类的非静态成员数据
B. 静态成员函数内可以直接访问类的静态成员数据
C. 非静态成员函数可以直接访问类的非静态成员数据
D. 非静态成员函数可以直接访问类的静态成员数据
      满分:2  分
34.  在表达式x+y*z中,+ 是作为成员函数重载的运算符,*是作为非成员函数重载的运算符。下列叙述中正确的是()。
A. operator+有两个参数,operator*有两个参数
B. operator+有两个参数,operator*有一个参数
C. operator+有一个参数,operator*有两个参数
D. operator+有一个参数,operator*有一个参数
      满分:2  分
35.  在C++中,通过()的机制可以对原有的类进行扩充和完善以适应新的需要。
A. 继承
B. 封装
C. 多态
D. 重载
      满分:2  分
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
需要购买此门答案请加qq2762169544(微信:2762169544)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作业辅导、毕业论文、学业辅导,考试辅导资料,请加qq2762169544(微信:2762169544)

Archiver|手机版|小黑屋|作业辅导网  

GMT+8, 2024-9-28 14:17 , Processed in 0.032479 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表