这里是我执行的调用类成员的一些方法的操作,但是出现"Debug Assertion Failu"的错误提示框.
跟踪程序,发现问题出现在下面这句(调用SetWaveSize()方法时)上,然后也出现上面这个错误,重试后,提示"Unhandled exception ..."请问各位大侠,问题可能在哪里啊?CWaveBuffer *tmpBuffer=new CWaveBuffer();
tmpBuffer->SetWaveSize(dwWaveSize / pcmWaveFormat.nBlockAlign, pcmWaveFormat.nBlockAlign);CWaveBuffer类:
class CWaveBuffer  
{
public:
void SetBuffer(void *pBuffer, DWORD dwNumSamples, int nSize); //对音乐数据文件的初始化
void SetWaveSize(DWORD dwNumSamples, int nSize); //设置音乐数据文件的大小
void* GetBuffer() const; //获取音乐数据文件指针
CWaveBuffer();
virtual ~CWaveBuffer();
private:
int m_nSampleSize; //采样率
void* m_pBuffer; //音乐数据文件
DWORD m_dwNum; //音乐数据文件大小
};
void CWaveBuffer::SetWaveSize(DWORD dwNumSamples, int nSize)
{
void * pBuffer=NULL;
pBuffer= new char[nSize * dwNumSamples];
SetBuffer(pBuffer, dwNumSamples, nSize);
m_dwNum=nSize;
}void CWaveBuffer::SetBuffer(void *pBuffer, DWORD dwNumSamples, int nSize)
{
ASSERT(dwNumSamples >= 0);
ASSERT(nSize); delete[] m_pBuffer;
m_pBuffer = pBuffer;
m_dwNum = dwNumSamples;
m_nSampleSize = nSize;
}