- 1、本文档共58页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[工学]C面向对象程序设计第二章
2.4 对象成员的引用 定义了对象后,可以直接访问对象中的公有类型的数据成员或成员函数。 在程序中访问对象成员有三种方法。 2.4.1 用对象名和成员运算符访问成员 2.4.2 用指向对象的指针访问成员 2.4.3 用对象的引用访问成员 2.4.1通过对象名和成员运算符访问 格式: 对象名.成员名 例: st1.display(); // 调用成员函数 display(); // 调用普通函数 注意: 只有成员函数可以访问类中的所有成员,而在类外只能访问公有成员。 如果在类外面用下面的语句是错误的: st1.num = 10101 2.4.2通过指向对象的指针访问成员 可以通过指针访问对象中的成员。 class Time { public: int hour; int minute; }; Time t, *p; t.hour=10; t.minute=20; p= t; cout p-hourendl; cout *p.hourendl; p-hour表示p当前指向对象t中的成员hour, 此时(*p).hour也代表对象t中的成员hour,在这个例子中,p-hour、(*p).hour、t.hour三种表示是一个意思。 2.4.2通过指向对象的指针访问成员(续) 2.4.3通过对象的引用来访问对成员 分析: Time t1; Time t2=t1; //对象t2是对象t1的引用 cout t2.hour; 这里t2是t1的别名,所以访问t2.hour就是访问t1.hour。 2.5类和对象的简单应用举例 这小节通过几个例子说明怎样用类设计程序,以及使用类的长处。 书上例2.1,2.2的设计方法不可取! 例2.3 类成员的调用 #include iostream using namespace std; class Time {private: int hour; int minute; int sec; public: void set_time() ; void show_time(); }; int main() { Time t1; t1.set_time(); t1.show_time(); Time t2; t2.set_time(); t2.show_time(); return 0; } 例2.3 类成员的调用(续) void Time::set_time() { cinhour; cinminute; cinsec; } void Time::show_time() { couthour:minute:secendl; } 例2.3 类成员的调用(续) 例2.4在整型数组中找最大值 #include iostream using namespace std; class Array_max //声明类 {public: void set_value(); void max_value(); void show_value(); private: int array[10]; int max; }; void Array_max::set_value() //定义类的成员函数 { int i; for (i=0;i10;i++) cinarray[i]; } void Array_max::max_value() //定义类的成员函数 { int i; max=array[0]; for (i=1;i10;i++) if(array[i]max) max=array[i]; } void Array_max::show_value()//定义类的成员函数 { coutmax=max; } 例2.4在整型数组中找最大值(续) int main() { Array_max arrmax; arrmax.set_value(); //调用成员函数 arrmax.max_value(); //调用成员函数 arrmax.show_value(); //调用成员函数
文档评论(0)