计算机图形学MFC中zbuffer算法调试时的debug error(有没有大手子解答一下)

头文件中定义:

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;
    }
}

把InitDepthBuffer函数的第4行删掉,你又定义个zBuffer干啥,得用成员变量啊
你这里又定义了一个临时变量,分配空间,但成员变量还是空的,到析构时肯定要出错啊