面向对象程序设计10,11-结构,类.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文档。上传文档
查看更多
面向对象程序设计10,11-结构,类

第十章 结构 第十一章 类 权巍 面向对象程序设计 第八章 内容 1 结构 2 从结构到类 3 成员函数 4 屏蔽类的内部实现 5 再论程序结构 * 面向对象程序设计 结构 是用户自定义的数据类型,可把相关联的数据元素组成一个单独的统一体。 结构的声明 使用struct关键字,如: struct Employee { char name[20]; long id; float salary; }; 1 结构 * 面向对象程序设计 struct Person { char name[20]; long id; float salary; }; int main(){ Person pp; Person tom={“tom”,123,2.85}; pp=tom; coutpp.nameendl; Employee lee=tom; //wrong } * 面向对象程序设计 结构(struct):可将相关联的数据元素组成一个单独的统一体 变量:由内部数据类型或自定义的结构类型所产生的实体 类(class):既包含数据元素,又包含函数(对数据元素的操作)。 对象: 由类产生的实体,本质上,变量也是对象,只不过粗糙一点罢了。 ‘ 2 从结构到类 * 面向对象程序设计 struct Savings //存款账户 { unsigned accountNumber; //账号 float balance; //余额 }; class Savings{ public: unsigned deposit(unsigned amount){ balance+=amount; return balance; } private: unsigned accountNumber; float balance; }; * 面向对象程序设计 类的访问控制符有三种:public、protected、private。 默认为private public:公共的,在任何地方都可以访问; protected、 private:受保护的、私有的,在类的外部(普通函数中、其它类的成员函数中等)不能访问 编程时,要想使用一个类,所要了解的全部内容就是它的公共成员。 ‘ 类的访问控制 * 面向对象程序设计 3 成员函数 3.1成员函数的定义 1)在类中定义(例:ch11_1.cpp) 2)在类之后定义 将类定义分成两部分: 类定义的头文件(Tdate.h):类的外部接口 类的成员函数定义的源文件(Tdate.cpp) :类的内部实现 (类名加在成员函数名前,而不是返回类型前) * 面向对象程序设计 例如: void Tdate::Set(int m,int d,int y) { month=m;day=d;year=y; } …… 作用域区分符 “::” 指明一个函数或数据属于哪个类。 如: Tdate::month、Tdate::Print() 注意:如“::”前没有类名,则表示全局数据或函数。 * 面向对象程序设计 3.2 调用成员函数 调用成员函数时,必须指明对象和成员函数名,并传递实参(若有参数)。 Tdate d; d.set(2005,12,5); 用指针调用成员函数 Tdate* dp = d; dp-set(2005,12,5); 用对象的引用调用成员函数 Tdate refd=d; refd.set(2005,12,5); * 面向对象程序设计 3.3 重载成员函数 类中的成员函数可以重载。 class Student { public: float grade(){…} float grade(float gd){…} } class Slope{ public: //不同的类中的同名函数不是重载 float grade(int id, float gd){…} } * 面向对象程序设计 成员函数与普通函数的区别: 成员函数属于类, 成员函数定义是类设计的一部分。 成员函数的操作主体是对象,使用时通过捆绑对象来行使其职责, 而普通函数被调用时没有操作主体 * 面向对象程序设计 使用类的应用程序,只需使用类定义头文件进行编程。 实现类,也只需要类定义头文件,不需要使用类的应用程序细节。 确定了类定义(头文件),便可以从事两方面的编程而互不干涉。 这种方式成功地屏蔽了类的内部实现。 4 屏蔽类的内部实现 * 面向对象程序设计 5 再论程序结构 5.1 类作用域 是指类定义和相应的成员函数定义范围。 在类作用域中各成员具有无限制的访问权。 在类作用域外,对类成员的访问

文档评论(0)

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

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

1亿VIP精品文档

相关文档