C++语言程序设计教程 第2版 普通高等教育十一五 国家级规划教材 习题答案 作者 吕凤翥 王树彬 习题解答6-10

上传人:w****i 文档编号:94398168 上传时间:2019-08-06 格式:DOC 页数:42 大小:1.04MB
返回 下载 相关 举报
C++语言程序设计教程 第2版 普通高等教育十一五 国家级规划教材 习题答案 作者 吕凤翥 王树彬 习题解答6-10_第1页
第1页 / 共42页
C++语言程序设计教程 第2版 普通高等教育十一五 国家级规划教材 习题答案 作者 吕凤翥 王树彬 习题解答6-10_第2页
第2页 / 共42页
C++语言程序设计教程 第2版 普通高等教育十一五 国家级规划教材 习题答案 作者 吕凤翥 王树彬 习题解答6-10_第3页
第3页 / 共42页
C++语言程序设计教程 第2版 普通高等教育十一五 国家级规划教材 习题答案 作者 吕凤翥 王树彬 习题解答6-10_第4页
第4页 / 共42页
C++语言程序设计教程 第2版 普通高等教育十一五 国家级规划教材 习题答案 作者 吕凤翥 王树彬 习题解答6-10_第5页
第5页 / 共42页
点击查看更多>>
资源描述

《C++语言程序设计教程 第2版 普通高等教育十一五 国家级规划教材 习题答案 作者 吕凤翥 王树彬 习题解答6-10》由会员分享,可在线阅读,更多相关《C++语言程序设计教程 第2版 普通高等教育十一五 国家级规划教材 习题答案 作者 吕凤翥 王树彬 习题解答6-10(42页珍藏版)》请在金锄头文库上搜索。

1、第6章 ;类和对象(一)练习题66.1 判断题 1使用class定义的类,其默认的访问权限是公有的,使用struct定义的类,其默认的访问权限是私有的。 2类中的成员函数都是公有的,数据成员都是私有的。 3定义在类体内的成员函数是内联函数,定义在类体外的成员函数不能是内联函数。 4类定义后,它的成员个数及名称就不会再被改变了。 5定义或说明对象时,系统会自动调用构造函数为创建的对象初始化。如果类中没有定义任何构造函数时,就无法给定义的对象初始化。 6定义一个对象时,系统只为该对象的数据成员开辟内存空间,而成员函数是同类对象共享的。 7对象成员的表示方法与结构变量成员的表示方法相同。 8创建对象

2、时系统自动调用相应的构造函数为对象初始化,没有相应的构造函数时,系统会自动生成。 9构造函数是一个其名与类名相同的特殊的成员函数。 10析构函数是一个函数体为空的成员函数。 11构造函数和析构函数都是系统自动调用的成员函数。 12构造函数和析构函数都可以重载。 13成员函数与一般函数一样可以重载、内联和设置参数的默认值。 14静态成员是指静态对象的成员。 15静态数据成员必须在构造函数的成员初始化列表中进行初始化。 16静态成员都可以使用类名加作用域运算符的方法来引用。 17静态成员函数中引用静态数据成员和非静态数据成员的方式是相同的。 18常成员指的是类体内使用const关键字说明的常数据成

3、员和常成员函数。 19常数据成员在常成员函数中的值是不允许改变的,而在非常成员函数中是允许改变的。 20常对象需要引用常成员函数,而不能引用非常成员函数。 21常对象的数据成员都是常数据成员。 22友元函数是说明在类体内的非成员函数,它可以访问类中的所有成员。 23可以把一个一般函数说明为某类的友元函数,也可以将某类的成员函数说明为另类的友元函数。 24友元类中的所有成员函数都是友元函数。 25类型转换函数是一种特殊的成员函数,定义时不加类型说明,无函数参数。 26单参数的构造函数具有类型转换的作用。6.2 单选题1下列关于类的定义格式的描述中,错误的是( C )。A类中成员有3种访问权限B类

4、的定义可分说明部分和实现部分C类中成员函数都是公有的,数据成员都是私有的D定义类的关键字通常用class,也可用struct2下列关键字中,不属于定义类时使用的关键字是( D )。AclassBstructCpublicDdefault3下列关于成员函数的描述中,错误的是( A )。A成员函数的定义必须在类体外B成员函数可以是公有的,也可以是私有的C成员函数在类体外定义时,前加inline可为内联函数D成员函数可以设置参数的默认值4下列关于对象的描述中,错误的是( D )。A定义对象时系统会自动进行初始化B对象成员的表示与C语言中结构变量的成员表示相同C属于同一个类的对象占有内存字节数相同D一

5、个类所能创建对象的个数是有限制的5下列关于构造函数的描述中,错误的是( C )。A构造函数可以重载B构造函数名同类名C带参数的构造函数具有类型转换作用D构造函数是系统自动调用的6下列关于析构函数的描述中,错误的是( A )。A析构函数的函数体都为空B析构函数是用来释放对象的C析构函数是系统自动调用的D析构函数是不能重载的7下列关于静态成员的描述中,错误的是( C )。A静态成员都是使用static来说明的B静态成员是属于类的,不是属于某个对象的C静态成员只可以用类名加作用域运算符来引用,不可用对象引用D静态数据成员的初始化是在类体外进行的8下列关于常成员的描述中,错误的是( C )。A常成员是

6、用关键字const说明的B常成员有常数据成员和常成员函数两种C常数据成员的初始化是在类体内定义它时进行的D常数据成员的值是不可以改变的9下列关于友元函数的描述中,错误的是( B )。A友元函数不是成员函数B友元函数只可访问类的私有成员C友元函数的调用方法同一般函数D友元函数可以是另一类中的成员函数10下列关于类型转换函数的描述中,错误的是( C )。A类型转换函数是一种成员函数B类型转换函数定义时不指出类型,也没有参数C类型转换函数的功能是将其函数名所指定的类型转换为该类类型D类型转换函数在一个类中可定义多个6.3 填空题1类体内成员有3个访问权限,说明它们的关键字分别是 公有 、 私有 和

7、保护 。2使用class定义的表中,成员的默认访问权限是 私有 的;由struct定义的类中,成员的默认的访问权限是 公有 的。3如果一个类中没有定义任何构造函数时,系统会自动提供一个 默认 构造函数;同样,类中没有定义析构函数时,系统会自动提供一个 默认 析构函数。4静态成员是属于 类 的,它除了可以通过对象名来引用外,还可以使用 类名限定 来引用。5友元函数是被说明在 类体 内的 非 成员函数。友元函数可访问该类中的 成员。6完成下列类的定义。 class A public: A() a=0; int int Geta( A &m); private: int a; ; int Geta(

8、 A &m) return m.a; 6.4 分析下列程序的输出结果1 #include class A public: A() a1=a2=0; coutDefault constructor called.n; A(int i,int j); A() coutDestructor called.n; void Print() couta1=a1,a2=a2endl; private: int a1,a2; ; A:A(int i,int j) a1=i; a2=j; coutConstructor called.n; void main() A a,b(5,8); a.Print(); b

9、.Print(); 答: Default constructor called. Constructor called. a1=0,a2=0 a1=5,a2=8 Destructor called. Destructor called.2 #include class B public: B() cout+bendl; B() coutb-endl; static int Getb() return b; private: static int b; ; int B:b=10; void main() B b1,b2,b3; coutB:Getb()endl; 答: 11 12 13 13 1

10、3 12 113 #include class Date public: Date(int y,int m,int d) year=y; month=m; day=d; friend void Print(Date &); private: int year,month,day; ; void Print(Date &d) coutd.year/d.month/d.dayendl; void main() Date d1(2005,10,1),d2(2005,12,9); Print(d1); Print(d2); 答: 2005/10/1 2005/12/94 #include class

11、C public: C(int i,int j) c1=i;c2=j; void Sum(C a,C b) c1=a.c1+b.c1; c2=a.c2+b.c2; void Print() coutc1=c1,c2=c2endl; private: int c1,c2; ; void main() C a(6,9); C b(a); C c(b); c.Sum(a,b); c.Print(); 答: c1=12,c2=185 #include class S public: S() PC=0; S(S &s) PC=s.PC; for(int i=0;iPC;i+) elemsi=s.elemsi;

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号