为什么我new出来的char*赋值之后删除不了啊?
class MyClass()
{
int m_nSize;
char *p_Msg;
MyClass(int size);
~MyClass();
//other codes
};
MyClass::MyClass(int size)
{
p_Msg=new char[size];
char a[]="12345"
//strcpy(p_Msg,a); 如果有这句,析构函数就会出错
//memcpy(p_Msg,a,5); 如果有这句,析构函数也会出错
//size足够大来容纳要拷贝的字符
}
MyClass::~MyClass()
{
delete p_Msg;
}
我用的是控制台程序,最奇怪的是其他类似的类都没问题,只有这一个不好用。