头文件中定义:
double **zBuffer;
源文件中的实现:
void CZBuffer::InitDepthBuffer(int w,int h,double zDepth)
{
this->w=w,this->h=h;
double **zBuffer;
zBuffer=new double*[w];
for (int i=0;i<w;i++)
{
zBuffer[i]=new double[h];
}
for (int i=0;i<w;i++)
{
for (int j=0;j<h;j++)
{
zBuffer[i][j]=zDepth;
}
}
}
析构函数中的释放内存:
CZBuffer::~CZBuffer(void)
{
for (int i=0;i<w;i++)
{
delete[] zBuffer;
zBuffer[i]=NULL;
}
if (zBuffer!=NULL)
{
delete zBuffer;
zBuffer=NULL;
}
}