其实你自己都发现问题了:就是m_pDev没有分配空间,是个无效的指针。
DEBUG时,在if(m_pDev)前,这个m_pDev可能就有值,所以不会执行下一句(new),所以其实你的m_pDev还是个无效的指针,所以我建议在构造函数中改成这样
m_pDev = NULL;
if( !m_pDev )
{
m_pDev=new cltVsDev();
}
在你调用指针的地方最好也是判断下你的指针是否有效:if( m_pDev ) 这样再来使用该指针就不会出错了。或者在使用前使用ASSERT( m_pDev != NULL );判断指针是否有效。