面向对象程序设计(C++)Chap3 类和对象.docxVIP

面向对象程序设计(C++)Chap3 类和对象.docx

  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++类的构成 用class来构造,声明class的语法同C中声明struct相似,但class还可包含函数声明。 Chap3 类和对象 例:class Point{ int x, y; public: void SetPoint(int, int); int GetX( ); int GetY( ); }; 1.基本格式: class 类名{ private: 私有数据成员; 私有成员函数; protected: 受保护数据成员; 受保护成员函数; public: 公有数据成员; 公有成员函数; }; //常范错误:“;”漏掉啦! 各成员函数的实现(定义部分) ①访问权限的说明顺序和次数是任意的 ②当私有段成员处于类声明中的第一部分,private关键字可以省略 ③数据成员的声明同普通变量的声明相同,其类型可以是任意的,但不能使用auto、extern、register修饰数据成员 ④不能在类的声明部分初始化数据成员 2.类成员使用说明 私有成员:只有类本身的成员函数能够访问,任何类以外的函数对私有成员的访问都是非法的,如Point类中x, y 公有成员:提供了类的外部界面,允许类的使用者(对象)访问,即可以通过类的公有成员访问这个类,如Point类中的SetPoint(int, int) 受保护成员:只能由类本身及其派生类的函数访问(继承机制) 因此,使用私有数据隐藏由类对象操纵的数据,然后提供一些成员函数来访问这些数据,通常,使用和改变这些数据的能力和实现细节是被隐藏起来的。 3.类的构造举例 —— 字符串类 要求:能够修改字符串内容、获取字符串长度和内容。 //string_1.h class String{ private: //私有段,可以省略 int length; // length和content为私有成员 char *contents; public: // 公有段开始 int Set_Content(char * ); //设置字符串;声明时,可以只指出函数所带参数的类型 int Get_Length( ); //取字符串长度 char *Get_Content( ); //取字符串内容 }; 4. HYPERLINK 课堂例题/类声明.doc 巩固练习——1(类声明) 成员函数的定义(Member Function) 1.两种定义方式: 在类体中声明,而在类外定义。 在类外定义时,必须在函数名前缀上类名,以标明此函数所属的类。 如,上例中的String类中的三个成员函数可定义如下: //string_1.cpp //功能:设置私有变量contents的值,同时计算其长度 int String::Set_Content(char *conts) { int i=0; contents=conts; //将字符串赋给私有变量contents while( *conts++ != ‘\0’ ) i++; //求字符串长度 length=i; //将长度赋给私有变量length return 1; } //功能:获取字符串的长度 int String::Get_Length( ) { return length; //返回私有变量length } //功能:获取字符串的值 char * String::Get_Content( ) { return contents; //返回私有变量contents } 注意: 在所定义的成员函数名之前应缀上“类名::”,如“String::” 函数的返回类型一定要与函数声明时的类型相匹配 在类体内定义。对于一些简单的成员函数,可以在类体中定义。 在类体内定义的成员函数被当作内联函数处理 2.内联函数的两种定义方式 隐式定义 —— 类体内定义 //point.h class Point{ int x, y; public: void SetPoint(int vx, int vy) int GetX( ){ return x; } int GetY( ){ return y; } }; //string_1.h

文档评论(0)

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

文档有任何问题,请私信留言,会第一时间解决。

版权声明书
用户编号:7043023136000000

1亿VIP精品文档

相关文档