一.选择题1.能提供封装的C++的下列关键字是(C)A.whileB. unionC. classD. for2.在下面所列项中,不是面向对象的特点的是(C)A. 多面性B. 抽象性和封装性C. 多线程和多任务D. 继承性3.下面选项中,对A类的构函数的正确定义是(A)A. A::~A( )B. void ~A::A(参数)C.~A::A(参数)D. void ~A::A( )4.下面有关构造函数的不正确说法是(B)A. 构造函数可以用来实现所有成员变量的初始化B. 构造函数不是类的成员函数C. 当生成类的实例时,自动调用构造函数进行初始化D. 构造函数用来分配对象所需的内存5.有关析构函数的不正确说法是(C)A. 析构函数在对象生存期结束时自动被调用B. 析构函数不得指定参数C. 定义析构函数时,可以指定返回类型为voidD. 析构函数名与类名相同6.下面有关类说法错误的是(C)A. 一个类可以有多个析构函数B. 一个类只能有一个析构函数C. 可以给析构函数指定参数D. 一个类中可以说明具有类类型的数据成员7.下面有关构造函数和new运算符关系的正确说法是(D)A. new运算符不调用构造函数B. 构造函数一定调用new运算符C. 当生成类的实例时,先调用new运算符,然后构造函数进行初始化D. 当用new运算符动态产生类的对象时,new运算符也自动调用构造函数8简单成员函数的声明一般不含关键字(B)A. doubleB. staticC. floatD. int9.已知:print( )函数是一个类的常成员函数,它无返回值,下面表示正确的项是(A)A.void print( )constB. const void print( )C. void const print( )D. void print(const)10.下列各类函数中,不是类的成员函数的是(C)A.构造函数B. 析构函数C. 友元函数D. 复制初始化构造函数11.对友元函数的描述正确的是(A)A.一个类的友元函数是在该类中说明的一个函数B.一个类的友元函数是该类的一个成员C.友元函数只允许访问该类对象的私有成员D.友元函数不允许访问该类的私有成员12.保证编译器正确调用成员函数的规则是(D)A.赋值兼容B. 继承C. 作用域D. 支配13.下面叙述不正确的是(A)A.基类的保护成员在派生类中仍然是保护的B.基类的保护成员在公有派生类中仍然是保护的C.基类的保护成员在私有派生类中是私有的D.对基类成员的访问必须是无二义性的
14.下面叙述不正确的是(C)
A.成员的访问能力在私有派生类中和公有派生类中是不同的B.基类的私有成员在公有派生类中不可访问C.赋值兼容规则不适用于多重继承的组合D.公有基类成员在保护派生中是保护的15.下面叙述不正确的是(D)A.派生类可以有自己的构造函数B. 派生类继承基类的构造函数C. 派生类继承基类的析构函数D. 派生类只能继承基类的一个构造函数16.下面有关类模板叙述不正确的选项是(A)A.不可以通过一个类来派生类模板B. 可以从一个类模板派生出一个新的类模板C. 类模板支持单一继承D. 类模板可以有多个参数17.下面有关类模版叙述不正确的是(B)A.可以使用派生B. 可以使用多个析构函数C. 可以又多个析构函数D. 可以有多个参数18.在构造向量时,不正确的叙述是(D)A.可以使用基本数据类型B. 可以使用类C. 可以使用向量D. 不可以使用容器19.对一个向量来说,不正确的叙述是(D)A.向量的长度可变B.向量有返回无需再次分配内存就能容纳对象个数的成员函数capacity( )C.如果数量已满,当增加一个元素时,向量成员函数capacity( )的长度自动增加D.如果数量已满,当需要增加一个元素是capacity( )的长度每次自动增加一个20.要是一个类成为抽象类,这个累应具有的条件是(A)A.至少有一个纯虚函数B. 至少有一个虚函数C. 只含有一个纯虚函数D. 只含有一个虚函数21.下面是基类中的成员函数形式,其中纯虚函数的是(B)A.virtual void f (void)B. virtual void f (void )=0C. void f (void)=0D. virtual void f (void){}
二.程序填空AB第1题:#includeUsing namespace std;Class point{int x,y;Publice ;Point( ):x(0),y(0){}Point(int a):x(a){y=0;}Point(int a,int b):x(a),y(b){};Int getx( ) {return x;}Int getx( ) {return y;}
}Void main( ){/*******************SPACE*******************/
/*******************SPACE*******************/ 【?】For(int i=0; i<3;i++)Cout<<"b["<For(int i=0; i<3;i++)Cout<<"c["<}答案1.point a[3];2.point b[3]={1,2,3};3.point c[3]={point(1,2),point(3,4),point(5,6)};B第2题:...Class point{
private;Int x,y;Publice;Point(int a,int b) {x=a; y=b;cout<<”point...”<Void showxy( ){cout<<”x=”<
{Private;Int h, w public;Rect angle(int a,int b,int h, int w):point (a,b)//构造函//数初始化列表{H=h;W=w ; cout<<”rectangle...”<V oid show( ) {cout<<”H=”<};V oid main( ){Rectangle r1(3,4,5,6);//派生对象调用基类的成员函数showxy( )/*******************SPACE*******************/ 【?】//派生对象调用基类的成员函数show( )/*******************SPACE*******************/ 【?】}1.r1.Showxy();2.r1.Show();A第3题:#includeUsing namespace std;Class A{int n;Public;A(int i):n(i){ }Int add(int a){return n+a;}};V oid main( ){/*******************SPACE*******************/ 【?】//指向类A的成员函数指针A x(10);P=A::add;Cout<<(x.*p)(15)<A*q=&;//类A对象x的指针/*******************SPACE*******************/ Cout<<【?】<}答案1.int (A::*p)(int);2.(q->*p)(15)B第3题:#includeUsing namespace std;Class point{Float x,y;Publice;Void display( )Void setxy(float a,float b);Float getx( );Float getx( );};//定义成员函数void display( )/*******************SPACE*******************/ 【?】{
Cout<}Void point::setxy(float a,float b){ x=a;y=b }Float point::getx( ){return x;}Float point::gety( ){return y;}Void main( ){Point a;a.setxy(3.5,5.8);B.display( );Point &ra=a;//用ra调用display输出x,y的值;/*******************SPACE*******************/【?】Cout<}答案1.void Point::Display()2.ra.Display();三.程序改错A第1题:Class base{Int number;Sttic int a;Public:Void set(int i,int j);Static int geta( ){return a ;}/************FOUND**********/Static int geta( ){return number;}/************FOUND**********/Void show( ){cout<};1.static int getn(){return number;}错误:静态成员函数只允许访问静态成员变量,number不是静态成员变量2.void show(){cout<<","<B第1题:#includeClass point {Int x;Public:Void init(int a) {setx(a);}Int getx( ) {return x;}/************FOUND**********/Int setx(int a){x=a;}};Void main( ){/************FOUND**********/A.init(56);Cour<<”a.x”<}答案1.Setx应有返回值,int Setx(int a){x=a;return x;}2.A对象应该先定义,Point A=new Point( );AB第2题:#includeUsing namespace std;/************FOUND**********/Void sort (int x,int n){Int i,j,t;For (i=0;i/************FOUND**********/For (j=0;j/************FOUND**********/If(x[i]>[i+1]){T=x[j];X[j]=x[j+1];X[j+1]=t; }}Main( ){Int i,n,a[100];Printf(“please input the length of the array:\n”);Cin>>n;/************FOUND**********/Sort(n,a)Cout<<”output the sorted array:”<For(i=0;iCout<}答案1.void sort(int *x,int n)2.for(j=0;j
3.if(x[j]>x[j+1])4.sort(a,n);A第3题:#includeClass point{Int x;Public:Void init(int a){setx(a);}Int getx( ){return x;}};Void main( ){/************FOUND**********/A.init(56);Cout<<”A.”<}答案1.Setx应有返回值,int Setx(int a){x=a:return x;}2.A对象应该先定义,Point A=new point();B第3题:Class base{Int *p;Public;/************FOUND**********/Base(int a ){p=&a};/************FOUND**********/Int getx( ){return m;}};答案1.base(int a){p=&a;}2.m没有定义

第四章类和对象 习题答案相关推荐

  1. C++语言程序设计——知识点复盘(第四章 类与对象)

    目录 面向对象程序设计的基本特点 1.抽象 2.封装 3.继承 4.多态 类和对象 类的成员函数 1.成员函数的实现 2.目的对象. 3.带默认形参值的成员函数 4.内联成员函数 构造函数 析构函数 ...

  2. python程序设计课后答案第四章_Python程序设计课后习题答案-第一单元

    <Python程序设计课后习题答案-第一单元>由会员分享,可在线阅读,更多相关<Python程序设计课后习题答案-第一单元(3页珍藏版)>请在人人文库网上搜索. 1.习题1一. ...

  3. 第四章——类和对象(一)

    c++面向对象的三大特性:封装.继承.多态 4.1封装 4.1.1封装的意义 封装的意义 将属性和行为作为一个整体,表现生活中的事物 将属性和行为加以权限控制 封装意义一: 在设计类的时候,属性和行为 ...

  4. 计算机网络原理【第四章 网络层】课后习题答案

    1.网络层向上提供的服务有哪两种?是比较其优缺点. 网络层向运输层提供 "面向连接"虚电路(Virtual Circuit)服务或"无连接"数据报服务前者预约了 ...

  5. 计算机操作系统(第四版)第四章存储器管理—课后习题答案

    1.为什么要配置层次存储器? (1)设置多个存储器可以使存储器两端的硬件能并行工作. (2)采用多级存储系统,特别是Cache技术,这是一种减轻存储器带宽对系统性能影响的最佳结构方案. (3)在微处理 ...

  6. c++ 复习 第四章类与对象

    小知识点 成员函数参数的默认值要写在类中 类外就不要再写默认值了 c++鼓励数据和操作封装在一起 对象之间的相互通信是通过( 调用成员函数 )实现的. 在类中,如果不作特别说明,所有的数据均为私有类型 ...

  7. 浙大版《C语言程序设计》第四版(何钦铭颜晖) 第4章 循环结构 课后习题答案

    浙大版<C语言程序设计>第四版(何钦铭颜晖) 第4章 循环结构 课后习题答案 你也可以上程序咖(https://meta.chengxuka.com),打开大学幕题板块,不但有答案,讲解, ...

  8. python第四章课后答案4.7_Python数据分析实战作业 第四章 Python数据分析实战 习题...

    第四章 Python数据分析实战 习题(数据见附件sizhang.xlsx) 班主任现有一班级的两张表,如下. 表一:成绩表 学 号C#线 代Python 16010203788896 表二:信息表 ...

  9. Effective Java(第三版) 学习笔记 - 第四章 类和接口 Rule20~Rule25

    Effective Java(第三版) 学习笔记 - 第四章 类和接口 Rule20~Rule25 目录 Rule20 接口优于抽象类 Rule21 为后代设计接口 Rule22 接口只用于定义类型 ...

最新文章

  1. JavaScript中常见的错误,你犯了几个?
  2. Flask实战2问答平台-发布问答界面完成
  3. 刷新后 页面 保持滚动条位置
  4. 不一致的国际数据隐私法
  5. boost::function_types::is_nonmember_callable_builtin用法的测试程序
  6. 在.NET Core中使用MongoDB明细教程(1):驱动基础及文档插入
  7. Eclipse4.5 mars 配置Velocity插件
  8. Mysql 异步复制
  9. Android 使用Nginx rtmp 模块
  10. HTML5网页录音和上传到服务器,支持PC、Android,支持IOS微信
  11. html5怎么设置黑色背景及亮度,网页背景怎么设置为纯黑色css样式
  12. 基于javaweb的大学生助学贷款管理系统项目源代码
  13. python把英语句子成分字母_英语句子成分分析报告(最完整版)
  14. kali更改/root下中文目录为英文教程
  15. 鬼使神差的给宝宝办了大米的卡
  16. 谁是最大的竞争对手互联网宝宝军团?
  17. 过滤器Filter的介绍
  18. Excel VBA 多条件筛选及汇总统计
  19. 有没有好人看看,谢谢谢谢
  20. [ERROR:0] global /build/opencv/modules/videoio/src/cap_ffmpeg_impl.hpp (2791) open VIDEOIO/FFMPEG: F

热门文章

  1. 机器学习入门(2)之模型评估与选择
  2. 心脏遥测监控系统服务器,基于ARM7的心电采集与远程传输系统设计
  3. mysql 索引合并_MySQL 索引合并(Index Merge)优化
  4. SystemC 代码添加和测试方法
  5. php获取变量数据类型,php如何确定变量的数据类型
  6. 如何区分电梯卡为id卡ic卡_电梯刷卡系统基本属性
  7. Leedcode4-sort listnode 归并排序
  8. 【Android】Android Studio打包生成正式签名的APK
  9. C# Http请求接口数据的两种方式Get and Post
  10. java和C++有什么异同