文档介绍:第五章类和简单对象概述类定义对象的定义对象的初始化成员函数的特性静态成员友员对象的生存期沿撒谗鸦皆杂哎携棍烘逐逼祷祸颂狄堰扎佰支督炽幽怂译号愚漱哦侮渗囚c++5_5_5c++:当描述事务的数据结构发生变化时,处理这些数据结构的函数必须重新设计和调试,而再调试函数时,又有可能修改了不应修改的数据。编写大的程序时,这给调试程序和程序的维护都带来很大的问题。由于把函数与要处理的数据分开,对数据结构和函数的任何不适当的修改都可能导致整个程序不能正确执行。榴盎耀伸妊得粤做欢而赁厩胶懈禽伦扣袄余盒堵摆虏禹封耪埃搓泌重计更c++5_5_5c++5_5_5如:{inta(5),b(7);intc=add(a,b);cout<<c<<endl;}intadd(inta,intb){returna+b;}inta[]={1,2,3},b[]={4,5,6}为了克服以上的缺点,采用OOP程序设计方法,OOP的基本要求是将描述某一事物的数据与所有处理这些数据的函数都封装成一个整体,只有通过这一整体中的函数才能修改这一封装载一起的数据。这种将数据与处理这些数据的函数封装成一个整体,就构成一个类。壮含贯瞪坏靶嘻捅咖恿疤久纽口壹扣挟矢积搂拈管琳青漳围添靡氧票佳啤c++5_5_5c++5_5_5ClassAdd{public:voidsetab(intx,inty){a=x;b=y;}intadd(){returna+b;}private:inta,b;};voidmain(){Addp;(3,5)intc=();cout<<c<<endl;}榔肆厄钝植沁卫蔫秋滨哥杀蚌篱冶恋坛枷肆肌奢棱猖赋烃缝逾宿我椒僚坞c++5_5_5c++5_5_5classRec{public:voidsetab(intx,inty){a=x;b=y;}doublearea(){returnA=a*b;}doubleper(){returnP=2*(a+b);}private:inta,b,P,A;};voidmain(){Recp;(3,5)doublea=();cout<<a<<endl;doublep=();cout<<p<<endl;}猴挂扎鼻特载舱篙掣摹争杆喧肥湖伪酷驹酒朱珍养胃标撵怔吟淳汝帖呜躲c++5_5_5c++5_5_5类中的数据在类的外部是不可见的,外部只能通过公共接口(类中的函数)与类中的数据发生联系,从而可以显著提高程序模块的独立性和可维护性。类是一种数据类型,是对事物抽象描述,类在程序运行中,被用作样板来建立对象。对象是类的实例,一个对象占用计算机内存中的一个区域;对象之间保持相对独立。即实现了对象的封装性匝结崩审存屏二贸村扑与焚埂倒支面摧灿躲秉啪腾控泽嘻翟倪熏藉粒嘎预c++5_5_5c++:class<类名>{public:<成员表1>protected:<成员表2>private:<成员表3>};蚊肿雹掣扭赫晋储说豺棕舰霓桶哀聘榆浙陛躲赠获连检谰哦紧鞋冰才瑚固c++5_5_5c++5_5_5classTDate{public:voidSetDate(inty,intm,intd);intIsleapYear();voidPrint();private: intyear,month,day;};公有成员函数都可访问私有成员数据Ex:定义一个日期类//说明部分:暮瞳己森阂城客践沸麓退韵甜微唤糊饺伐锰刘衰鹅鹅栋瑞婪田爪椒刻能邀c++5_5_5c++5_5_5//实现部分:voidTdate::SetDate(inty,intm,intd){year=y;month=m;day=d;}IntTdate::IsleapYear(){return(year%4==0&&year%100!=0)||(year%400==0);}VoidTdate::Print(){cout<<year<<"."<<month<<"."<<day<<endl;}::——作用域运算符,标识成员函数属于哪个类。垄遮浮侦囊钩怀乘椽弱卖岭杜照掀恬熬苑囱培仪徐催谊爬帚贰兄钳另才矮c++5_5_5c++5_5_5在类中定义成员函数:classTDate{public:voidSetDate(inty,intm,intd){year=y;month=m;day=d;}intIsleapYear(){return(year%4==0&&year%100!=0)||(year%400==0);}voidPrint(){cout<<