下面这个函数是通过工具栏按钮来调用的.
void CSample::GenerateData(unsigned TypeFlag)
{
if(m_pInput_X !=NULL) {delete[]m_pInput_X; m_pInput_X=NULL;}
if(m_pInput_Y !=NULL) {delete[]m_pInput_Y; m_pInput_Y=NULL;}
m_pInput_X=new double[CPublic::m_lNumber];
m_pInput_Y=new double[CPublic::m_lNumber];
    int i;
if (TypeFlag==1)
{
int Mag=100; for (i=0;i<CPublic::m_lNumber;i++)
{
m_pInput_X[i]=i;
m_pInput_Y[i]=rand()%200-100;
}
}
if (TypeFlag==2) 
{
int Mag=100;
for (i=0;i<CPublic::m_lNumber;i++)
{
m_pInput_X[i]=i;
m_pInput_Y[i]=1.0*Mag*(sin(2.0*(CPublic::PI)                         *i*m_f/CPublic::m_fs));
}
}
if (TypeFlag==3)
{

for (i=0;i<CPublic::m_lNumber;i++)
{
m_pInput_X[i]=i;
m_pInput_Y[i]=rand()%200-100;
}
}
CPublic::SetOrientData    (m_pInput_X,m_pInput_Y,CPublic::m_lNumber);
delete[]m_pInput_X;
delete[]m_pInput_Y;
}如果我程序运行一次只调用一次这个函数时不会出错.
但是当我连续两次(不间断)单击工具条调用这一函数时,程序就出错了.感到很困惑.还望各位高手指点.小弟,不胜感激.