c++对象数组的使用

c++对象数组的使用

ID:17910838

大小:34.50 KB

页数:5页

时间:2018-09-09

c++对象数组的使用_第1页
c++对象数组的使用_第2页
c++对象数组的使用_第3页
c++对象数组的使用_第4页
c++对象数组的使用_第5页
资源描述:

《c++对象数组的使用》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、对象数组1.对象数组:在ANSIC中,把具有相同结构类型的结构变量,有序地集合起来便组成了结构数组.在ANSIC++中,与此类似将具有相同class类型的对象有序地集合在一起便组成了对象数组,对于一维对象数组也称为"对象向量",因此对象数组的每个元素都是同种class类型的对象.(1)对象数组的定义:其定义格式为:对象数组名[元素个数]...[={初始化列表}];其中是对象数组元素的存储类型,与变量一样有extern型,static型和auto型等,该对象数组元素由指明所属类,与普通数组类似,方括号内给出某

2、一维的元素个数.对象向量只有一个方括号,二维对象数组有两个方括号,如此类推.#includeclassPoint{intx,y;public:Point(void){x=y=0;}Point(intxi,intyi){x=xi;y=yi;}Point(intc){x=y=c;}voidPrint(){staticinti=0;cout<<"P"<

3、Point(10,0)};intk=0;cout<<"输出显示第"<<++k<<"个三角形的三顶点:";for(inti=0;i<3;i++)Triangle[i].Print();Triangle[0]=Point(1);Triangle[1]=6;//CallPoint(6)Triangle[2]=Point(11,1);cout<<"输出显示第"<<++k<<"个三角形的三顶点:";for(i=0;i<3;i++)Triangle[i].Print();PointRectangle[2][2]

4、={Point(0,0),Point(0,6),Point(16,6),Point(16,0)};cout<<"输出显示一个矩形的四顶点:";for(i=0;i<2;i++)for(intj=0;j<2;j++)Rectangle[i][j].Print();cout<<"输出显示45度直线上的三点:";PointLine45[3]={0,1,2};for(i=0;i<3;i++)Line45[i].Print();PointPtArray[3];cout<<"输出显示对象向量PtArray的三元素

5、:";for(i=0;i<3;i++)PtArray[i].Print();}该程序的输出结果:输出显示第1个三角形的三顶点:P0(0,0)P1(5,5)P2(10,0)输出显示第2个三角形的三顶点:P3(1,1)P4(6,6)P5(11,1)输出显示一个矩形的四顶点:P6(0,0)P7(0,6)P8(16,6)P9(16,0)输出显示45度直线上的三点:P10(0,0)P11(1,1)P12(2,2)输出显示对象向量PtArray的三元素:P13(0,0)P14(0,0)P15(0,0)(2)对象数组

6、的初始化①当对象数组所属类含有带参数的构造函数时,可用初始化列表按顺序调用构造函数初始化对象数组的每个元素.如上例中:PointTriangle[3]={Point(0,0),Point(5,5),Point(10,0)};PointRectangle[2][2]={Point(0,0),Point(0,6),Point(16,6),Point(16,0)};也可以先定义后给每个元素赋值,其赋值格式为:对象数组名[行下标][列下标]=构造函数名(实参表);例如:Rectangle[0][0]=Point(0

7、,0);Rectangle[0][1]=Point(0,6);Rectangle[1][0]=Point(16,6);Rectangle[1][1]=Point(16,0);若对象数组所属类含有单个参数的构造函数时;②如上例中"Point(intc);",该构造函数置x和y为相同的值.那么对象数组的初始化可简写为:PointLine45[3]={0,1,2};PointTriangle[3]={0,//CallPoint(0)5,//CallPoint(5)Point(10,0)};③对象数组创建时若没有初

8、始化列表,其所属类中必须定义无参数的构造函数,在创建对象数组的每个元素时自动调用它.如上例中在执行"PointPtArray[3];"语句时,调用Point(void),初始化对象数组PtArray[]的每个对象为(0,0).④如果对象数组所属类含有析构函数,那末每当建立对象数组时,按每个元素的排列顺序调用构造函数,每当撤消数组时,按相反的顺序调用析构函数.#include#includeclassPersona

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。