《面向对象程学设计》复习大纲.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《面向对象程学设计》复习大纲

第1、2章 绪论与C++对C的扩充 1.类与对象的基本概念: 类是对一组具有相同属性(或称状态,用数据表示)和行为(或称操作、方法,用函数实现)的对象的抽象,一个类所包含的方法和数据描述了一组对象的共同属性和行为。对象则是类的具体化,是类的实例。 在面向对象的程序设计中,总是先声明类,再由类生成其对象,类是建立对象的“模板”,按照这个模板所建立的一个个具体的对象,就是类的实际例子,通常称为实例。 2.面向对象程序设计方法的3个主要特点: (1)封装性: (2)继承性:体现在类的层次关系中,派生的子类拥有父类中定义的数据和方法。子类直接继承父类的全部描述,同时可修改和扩充,并且继承具有传递性。 (3)多态性:对象根据所接收的消息而做出动作。同一消息为不同的对象接受时可产生完全不同的行动,这种现象称为多态性。利用多态性,用户可发送一个通用的信息,而将所有的实现细节都留给接受消息的对象自行决定,这样,同一消息即可调用不同的方法。 3.C++对C的补充 (1)输入输出头文件: #includeiosteam using namespace std;//使用命名空间std const int *p; int *u; *p=10; //╳ 因为p指向的是常量,其所指空间的内容不可修改 p=u; //√ ②常指针: int d = 1; int* const w = d; *w=2; // OK w=p; //╳ 因为p是一个常指针,其所指空间地址不可修改 (3)函数的使用 ①形参带默认值:在调用函数时,可以不用给带默认值的形参传递实参。 如: void myfunc(double d=0.0){ …} myfunc(198.234); // pass an explicit value myfunc( ); // let function use default const修饰形参:表示此参数在其所在的函数内为常量,即不可修改。 内联/内嵌函数:在函数声明或定义的前面加上关键字“inline”,该函数就被声明为内联函数。 重载 构造函数与类同名功能7.字符串类 (1)标准C++类库预定义了string字符串类,它封装了字符串的属性,并提供了访问属性的成员函数。利用string可以直接声明字符串变量,并能进行字符串的赋值、相加、比较、查找、插入、删除、取子串等操作。 (2)使用string类时必须包含头文件string,并使用命名空间std。 (3)MFC中的CString类在功能上类似于标准C++的string类。 定义格式static修饰符说明class X { 类名1 成员名1; 类名2 成员名2; …… }; C::C(C c):a(c.a) { … } 第派生类中成员增加新的成员; 重新定义继承自基类的成员。 3.派生类对基类成员的访问控制 (1)说明: ①无论是哪种继承方式,基类的private成员在派生类中都是不可见的。这符合数据封装和信息隐藏的思想。 ②派生类虽然不能直接访问基类的private成员,但可以通过基类的public或protected成员函数间接访问。 ③不同继承方式的影响主要体现为: 派生类成员对基类成员的访问控制(类域内内部访问) 派生类对象对基类成员的访问控制(类域外对象访问) (2)私有继承的访问规则: 基类中的成员 公有成员 保护成员 私有成员 访问方式 内部访问 可访问 可访问 不可访问 对象访问 不可访问 不可访问 不可访问 (3)公有继承的访问规则: 基类中的成员 公有成员 保护成员 私有成员 访问方式 内部访问 可访问 可访问 不可访问 对象访问 可访问 不可访问 不可访问 (4)保护继承的访问规则: 基类中的成员 公有成员 保护成员 私有成员 访问方式 内部访问 可访问 可访问 不可访问 对象访问 不可访问 不可访问 不可访问 4.同名成员:同名覆盖 在派生类中可以对从基类中继承的成员函数进行重新定义,使之满足派生类的具体需要。——同名覆盖 通过派生类对象调用一个被重定义过的基类成员函数,被调用的是派生类的成员函数,此时若想调用基类的成员函数,必须使用基类名和作用域运算符加以限定。 5.派生类的构造函数和析构函数 派生类不能继承基类的构造函数和析构函数。由于派生类继承了基类成员,在建立派生类的对象时,必须先调用(隐式或显式)基类的构造函数来初始化派生类对象的基类成员。 (1)派生类构造函数: ①定义格式: 派生类名::派生类构造函数名(形参表):基类构造函数(参数表) { 函数体 } ②说明: 调用基类构造函数的参数表来自于派生类构造函数的参数表中。 若在基类中没有定义任何构造函数,则派生类的构造函数定义时可省

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

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

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档