类与对象(new)精要.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文档。上传文档
查看更多
第7章 类与对象 第7章 类与对象 7.1 类与对象 在面向过程的结构化程序设计中,程序模块是由函数构成,函数将对数据处理的语句放在函数体内,完成特定的功能,数据则通过函数参数传递进入函数体。 在面向对象的程序设计中,程序模块是由类构成的。类是对逻辑上相关的函数与数据的封装,它是对问题的抽象描述。 面向对象的程序设计方法就是运用面向对象的观点来对现实世界中的各种问题进行抽象,然后用计算机程序来描述并解决该问题,这种描述和处理是通过类与对象实现的。 类与对象是C++程序设计中最重要的概念。 7.1 类与对象 【例7-1】 模拟时钟 分析:不管什么样的时钟, 也不管各种时钟是如何运行的, 它都具有时、分、秒3个属性。除了运行、显示时间的基本功能外,还有设置(调整)时间、设置闹钟等功能。将时钟的这些属性与功能抽象出来,分别给出面向过程的程序与面向对象的程序来实现对时钟的模拟。 思考:二者有何不同? 7.1.2 类的定义 简单讲,类是一个包含函数的结构体。因此,类的定义与结构类型的定义相似,其格式如下: 7.1.2 类的定义 例如:例7-1中定义了一个时钟类Clock。 7.1.2 类的定义 1. 数据成员 类定义中的数据成员描述了类对象所包含的数据类型,数据成员的类型可以是C++基本数据类型,也可以是构造数据类型。 struct Record { char name[20]; int score; }; class Team { private: int num; //基本数据类型 Record *p; //构造数据类型 }; 7.1.2 类的定义 class Team; //已定义的类 class Grade { Team a; // 使用了已定义的类类型 Grade *p; // 使用正在定义的类类型定义指针成员 Grade r; // 使用正在定义的类类型定义引用成员 Grade b; // 错误! 使用了未定义完的类Grade定义变量 }; 7.1.2 类的定义 2. 成员函数 作为类成员的成员函数描述了对类中的数据成员实施的操作。成员函数的定义、声明格式与非成员函数(全局函数)的格式相同。成员函数可以放在类中定义,也可以放在类外。放在类中定义的成员函数为内联(inline)函数。 Clock类中的成员函数就是放在类内定义的。 C++可以在类内声明成员函数的原型,在类外定义函数体。这样做的好处是相当于在类内列了一个函数功能表,使我们对类的成员函数的功能一目了然,避免了在各个函数实现的大堆代码中查找函数的定义。在类中声明函数原型的方法与一般函数原型的声明一样,在类外定义函数体的格式如下: ::是类的作用域分辨符,用在此处,放在类名后成员函数前,表明后面的成员函数属于前面的那个类。 7.1.2 类的定义 Clock类中的成员函数可以在类中声明: class Clock { private: int H,M,S; public: void SetTime(int h,int m,int s); //声明成员函数 void ShowTime(); //声明成员函数 }; 在类外实现成员函数如下: void Clock::SetTime(int h,int m,int s) { H=h,M=m,S=s; }; void Clock:: ShowTime() { coutH:M:Sendl; } 7.1.2 类的定义 如果要将类外定义的成员函数编译成内联函数,可以在类外定义函数时,函数的返回类型前加上inline; 下面将ShowTime()定义成内联函数,与在类内定义成员函数的效果相同。 inline void Clock::ShowTime() {

文档评论(0)

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

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

1亿VIP精品文档

相关文档