(C++计算机语言)c++_review教程教案.pptVIP

  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文档。上传文档
查看更多
(C++计算机语言)c++_review教程教案.ppt

C++面向对象程序设计;C++ Basis Classes and Data Abstraction Operator Overloading Inheritance Polymorphism I/O Streams C++ Template Exception Handling STL;C++ Basis;C++ 是一种静态类型语言,是C的超集。 变量和函数在使用前必须先声明 变量可以声明多次但是只能定义一次 那么变量的声明和定义是如何区别的呢? 使用?extern?关键字。?? 最好在定义变量时就进行初始化 数据类型可以为 const 或非 const;const 对象必须要初始化,且其值不能被修改 ;基本内置类型;Reference vs. Pointers;动态创建对象的初始化 撤销动态创建的对象 ;出现在相同作用域中的两个函数,如果具有相同的名字而形参表不同,则称为重载函数。 函数重载和重复声明的区别 若返回类型和形参表完全匹配,视为重复声明 若形参表完全相同,但返回类型不同,则第二个声明是错误的 ;Classes and Data Abstraction 类与数据抽象;扼要重述 类成员 成员变量 成员函数 ;访问标号定义类的抽象接口和实施封装 各访问标号可访问性如下: Public:可以被 1.该类中的函数 2.子类的函数 3.其友元函数访问 4.该类的对象访问;Private:只能由 1.该类中的函数 2.其友元函数访问 不能被任何其他访问,该类的对象也不能访问 Protected:可以被 1.该类中的函数 2.子类的函数 3.其友元函数访问 但不能被该类的对象访问。 ;成员函数具有一个附加的隐含形参,即指向该类对象的一个指针this。;构造函数是特殊的成员函数,只要创建类类型的新对象,都要执行构造函数。 名字与类的名字相同 不能指定返回类型 可以没有形参,也可以定义多个形参 构造函数可以被重载 实参决定使用哪个构造函数 构造函数自动执行 ;构造函数可以使用缺省参数 合成的默认构造函数 一个类只要定义了一个或以上个构造函数,编译器就不会再生成默认构造函数 只有没有定义构造函数时,编译器才会自动生成一个默认构造函数 使用默认构造函数 ;友元机制允许一个类将对其非公有成员的访问权授予指定的函数或类 友元的声明以关键字 friend 开始 友元的实现一般直接写在类里。 ;类可以定义类静态成员 static 数据成员独立于该类的任意对象而存在; 每个 static 数据成员是与类关联的对象; 类也可以定义 static 成员函数 static 成员函数没有 this 形参; 类的static成员函数只能调用类的static成员函数; 可以直接访问所属类的 static 成员,但不能直接使用非 static 成员 ;Defining and Using static Class Members;static 数据成员必须在类定义体的外部定义(正好一次) static 成员不是通过类构造函数进行初始化,而是应该在定义时进行初始化 double Account::interestRate = 1.76 例外:整型 const static 数据成员就可以在类的定义体中进行初始化;复制构造函数可用于 根据另一个同类型的对象显式或隐式初始化一个对象 复制一个对象,将它作为实参传给一个函数 从函数返回时复制一个对象 初始化顺序容器中的元素 根据元素初始化式列表初始化数组元素;合成赋值操作符执行逐个成员赋值 复制和赋值常一起使用 ;何时调用析构函数 撤销类对象时 撤销一个容器(标准库容器或内置数组)时 何时编写显式析构函数 释放在构造函数或在对象生命期内获取的资源,如动态申请的内存空间。;Operator Overloading ;重载操作符是具有特殊名称的函数 保留字 operator 后接需定义的操作符号。 Sales_item operator+(const Sales_item, const Sales_item); 重载操作符必须具有一个类类型操作数 优先级和结合性是固定的 一般不要重载具有特定内置含义的操作符 如内置逻辑与()和逻辑或(||)操作符 ;赋值(=)、下标([])、调用(())和成员访问箭头(-)等操作符必须定义为成员 复合赋值操作符通常应定义为类的成员 改变对象状态或与给定类型紧密联系的其他一些操作符(++、--和解引用), 通常定义为类成员 对称的操作符,如算术操作符、相等操作符、关系操作符和位操作符,最好定义为普通非成员函数(友元);IO 操作符必须为非成员函数 我们不能将该操作符定义为类的成员,否则,左操作数将只能是该类类型的对象 左操作数必须为 ostream 类型;赋值必须返回对 *this 的

文档评论(0)

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

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

1亿VIP精品文档

相关文档