#include?<iostream>
#include<stdlib.h>
using?namespace?std;
class?Coordinate
{???
public:
Coordinate()
{
cout<<"Coordinate()"<<endl;
}
~Coordinate()
{
cout<<"~Coordinate()"<<endl;
}
???????????????????????????????????????????? //?打印坐標(biāo)的函數(shù)
void?printInfo()?
{
???cout<<"("<<m_iX<<","<<m_iY<<")"<<endl;
}
public:
int?m_iX;
int?m_iY;
};
int?main(void)
{
?//定義對(duì)象數(shù)組
Coordinate?coorArr[2];???????????//??這個(gè)【2】表示數(shù)組一共有2個(gè)元素
coorArr[0].m_iX=1;?????????
coorArr[0].m_iY=2;????????????????//這個(gè)【0】表示第0個(gè)元素
coorArr[1].m_iX=3;
coorArr[1].m_iY=4;
????//遍歷數(shù)組,打印對(duì)象信息
for(int?i?=?0;?i?<?2;?i++)
{
coorArr[i].printInfo();
}
?//??delete?[]coorArr;
?//??coorArr=NULL;
system("pause");
return?0;
}
//定義具有2個(gè)對(duì)象的Coordinate數(shù)組,遍歷對(duì)象數(shù)組,打印對(duì)象信息如:(1,2)(3,4)
2016-02-03
如果沒(méi)有自定義析構(gòu)函數(shù),系統(tǒng)會(huì)自動(dòng)生成一個(gè)默認(rèn)的析構(gòu)函數(shù),在刪除對(duì)象時(shí)運(yùn)行。
它并不是沒(méi)有運(yùn)行,你是在棧上定義的對(duì)象,所以在整段程序結(jié)束時(shí)系統(tǒng)再會(huì)調(diào)用析構(gòu)函數(shù),你只是沒(méi)有看到而已(此時(shí)程序還沒(méi)運(yùn)行完),如果用在堆上定義,在釋放內(nèi)存時(shí)會(huì)看到調(diào)用的。