C++封装
一.数组的实例化对象
1.从栈中和从堆中实例化数组的形式
Coordinate coor[3];
coor[0].x=1;
coor[0].y=2;
Coordinate *p=new Coordinate [3];
p->x=1;
p[0].y=1;
**注意:在释放内存时,要使该元素指回到申请的那段内存上去!
/* for(int i=0;i<3;i++)
{
cout<< p->x << p->y <<endl;
p--; //此时p==3;
}
p++; //此时p==0与初始时刻申请的p的内存相同;
delete [] p;//销毁元素不加【】 delet p 则只销毁了第一个元素
p=NULL;
*/
另外可采用 (p+1)->x 的形式去访问,不会修改头指针!【提倡!】
二. 对象成员
a。对象成员: 在对象内做数据成员的对象
在实例化对象时,先执行对象成员的构造函数,然后执行外部对象的构造函数。
在销毁时,先执行外部对象的析构函数,最后执行对象成员的析构函数。
(两个函数的执行顺序相反!)
b。默认构造函数:a。无参构造函数
————————b。有参构造函数其所有参数均进行默认
(切记,如果函数的参数没有全部进行默认则不叫默认构造函数。)
对象成员如果没有默认构造函数那么外部对象必须对 对象成员进行初始化!
‘