- 1、本文档共78页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
类的成员:成员函数、成员数据 class Clock { public: void SetTime(int NewH, int NewM, int NewS); void ShowTime(); private: int Hour, Minute, Second; }; void Clock::SetTime(int NewH, int NewM, int NewS) { Hour=NewH; Minute=NewM; Second=NewS; } void Clock::ShowTime() { coutHour:Minute:Second; } 内联成员函数 为了提高运行时的效率,对于较简单的函数可以声明为内联形式。 内联函数体中不要有复杂结构(如循环语句和switch语句)。 在类中声明内联成员函数的方式: 将函数体放在类的声明中。 使用inline关键字。 内联成员函数举例(一) class Point { public: void Init(int initX,int initY) { X=initX; Y=initY; } int GetX() {return X;} int GetY() {return Y;} private: int X,Y; }; 内联成员函数举例(二) class Point { public: void Init(int initX,int initY); int GetX(); int GetY(); private: int X,Y; }; inline void Point:: Init(int initX,int initY) { X=initX; Y=initY; } inline int Point::GetX() { return X; } inline int Point::GetY() { return Y; } 2.4 对象成员的引用 对象 类的对象是该类的某一特定实体,即类类型的变量。 声明形式: 类名 对象名; 例: Clock myClock; 类中成员的访问方式 类中成员互访 直接使用成员名 类外访问: 访问 public 属性的成员,有3种方法 通过对象名和成员运算符(“.”)访问对象中的成员 通过指向对象的指针访问对象中的成员 通过对象的引用来访问对象中的成员 访问 private 属性的成员,有3种方法 1、通过公有函数为私有成员赋值 2、利用指针访问私有数据成员 3、利用函数访问私有数据成员 4、利用引用访问私有数据成员 访问 public 属性的成员,有3种方法: 通过对象名和成员运算符(“.”)访问对象中的成员 通过指向对象的指针访问对象中的成员 通过对象的引用来访问对象中的成员 (1)通过对象名和成员运算符访问对象中的成员 void main() { Point p1; p1. Init(8,100); coutp1. GetX()p1.GetY(); } 再举例: class Time {public: int hour; int minute; }; void main() { Time t,*p; p=t; coutp-hour; } 3 通过对象的引用来访问对象中的成员 class Time {public: int hour; int minute; }; void main() { Time t1; Time t2=t1; coutt2.hour; } 类的对象如何引用私有数据成员 1、通过公有函数为私有成员赋值 2、利用指针访问私有数据成员 3、利用函数访问私有数据成员 4、利用引用访问私有数据成员 类引用举例 2、面向对象的概念——类的定义应用举例(7) 根据以上的抽象分析,可以给出矩形的JAVA类定义: class rectangle{ class rectangle{ private: double L; //边的长度 double W; //边的宽度 double X;
文档评论(0)