对象数组:
把类当类型,本章用class stu作例:
int a[10];是个数组,stu a[10];也是数组。
初始化赋值:
当构造函数形参有一个时,stu a[3]={1,2,3};给a[0],a[1],a[2]的构造函数形参分别赋值123.
调用:a[1].waight;调用a[1]里的waight成员。
重载的构造函数:stu[3]={1,2};stu[0],stu[1]调用带参的构造函数,stu[2]调用不带参的。
如果构造函数有多个形参:
stu a[3]={
stu(1,2,3),
stu(4,5,6),
stu(8,7,6)};
在主函数调用后将会调用三次析构函数。
对象指针:
stu*p;
stu A;
p=&A;
A.grade()与P->grade()以及(*p).grade()等价。
对象指针也可以用来访问对象数组,方法与普通指针相似。
this指针:
一个类的成员函数:void disp()
{
cout<<"x=="<<x<<endl;}
被a.disp()调用,相当于 cout<<"x=="<<this->x<<endl;
cout<<"x=="<<a.x<<endl;
函数调用的时候系统把a的地址传给形参this,void disp()实际上是void disp(*this);