C++朴脍末复习2012.ppt

  1. 1、本文档共99页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C朴脍末复习2012

C++期末复习;考试题型和分值分布;第三章 输入、输出;3.4 C++的输入与输出 P50 C和C++本身都没有输入和输出语句,它们是在编译系统提供的I/O库中定义的,所以使用时要包含 #include iostream 。 C++的输出和输入是用“流”(stream)的方式实现的。;3.4.2 在输入流与输出流中使用控制符;第四章 函数函数;一、参数有默认值的函数;参数有默认值的函数,格式正确吗?;int add(int a, int b=0,int c = 0) { return a+b+c; } int add(int a) { return a; };二、重载函数:函数名相同参数不同;例子:判断是否重载函数;例子:判断是否重载函数;三、引用(变量或对象的别名);;第八章 类和对象;一、C++和C的最大区别:增加了面向对象的机制;对象:生活中一个个的实体 类: 对生活中一个个的实体,抽象出公共性质 并加以描述的综合类型。 类是对象的抽象,对象是类的特例,或者说 是类的具体表现形式。 ;抽象、封装 继承、多态性;例如:根据下述名词,设计类。a) 指出下列哪些名词将被设计成类 b)若有继承关系,请指出基类和派生类 c) 若下述名词中有未成为候选类的名词,请解释原因。;狗,猫,动物,名叫旺财的狗,黑 猫,波斯猫;三、类的声明和实现;private:只能在类内访问。即:只能在本类 的成员函数中使用。 protected:只能在类内和派生类中访问。 即:只能在本类的成员函数和本类的派生类 的成员函数中使用。 (3). 最后必须以一个分号表示声明结束;2. 类内、类外定义成员函数 理解成员函数隐含的this指针,掌握访问对象的成 员的方法,类外:通过对象名,指向对象的指 针,对象的引用都可访问; obj.display( ); 类内:多数直接访问本类的数据成员和成员函数。 例:void display( ) { cout num; cout getage(); } ;3. 构造、析构函数 掌握构造、析构函数的格式、作用。会写类的无参的构造 (默认构造),带参的构造函数。一个类可以有多个构 造函数,这些构造函数是重载的关系,其中只能包括一个默 认构造函数。一个类只能有一个析构函数。当没有任何的构 造函数和析构函数时,系统会提供一个默认的构造函数和析 构函数,函数体为空。掌握重载构造函数和含默认参数的构 造函数。 ;定义一个对象时,系统会自动做两件事情,一是给 对象分配内存空间,二是调用跟对象格式对应的构 造函数。构造函数一般用来对数据成员初始化。 当对象生命期即将结束时,系统会自动调用析构函 数对内存进行清理,撤销内存。;;注意一些细微的变化,没有任何输出;类型说明符 数组名 [常量表达式]; Student stud[50];;动态分配内存;用关键字new和delete动态分配内存和撤销 内存,格式如下: 类型 指针变量 = new 类型(初值) delete 指针变量 or delete [ ] 指针变量 例如:char *p = new char ; delete p; int *p = new int[6]; delete [ ]p;;动态分配内存的优点:用变量决定内存大小;例题:;4. 友元函数 友元:用friend声明友元,可以访问与其有 好友关系的类中的私有成员。 注意:由于友元函数不是成员函数,没有 this指针,所以在友元函数内要通过对象 名、对象的引用名访问成员。对象或引用一 般在友元函数的参数位置上设置。;5、 静态数据成员;6、通过指向对象的指针来访问 ;对象的复制;在建立对象时调用一个特殊的构造函数——复制构造函数(拷贝构造函数copy constructor)。这个函数的形式是: ;;拷贝构造函数;问题1:A aa; A 和aa哪个占内存空间? 占多大? 答案:对象占内存,类型不占,所以aa占内 存,所占内存大小等于所有数据成员大小, 即:8个字节。;问题2:A aa; 调用构造函数吗? 答案:由于A类中用户没有自己定义任何构造 函数,所以系统自动给A类生成一个无参、函 数体为空的构造函数。执行A aa时,系统会 自动调用系统给A类生成的 A(){} 函数;问题3:A aa[100]; 调用几次构造函数? 答案:100次,aa数组中每个元素都是A类 的对象,即有100个A类对象,每个对象调用 一次构造函数,共调用100次。;问题4:将 A aa; 改为 A *p = new A; 此句调用构造函数吗? 答案:new A ,先

文档评论(0)

junzilan11 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档