我定义了一个类:
class CPict : public CObject  
{
public:
CPict();
virtual ~CPict();
...
}
...
该类的实体:m_pict;
另外我在其他地方定义了一个CObArray类型的实体:CObArray aaa;之后,在程序运行的时候
我每次得到一个内容不同的m_pict,就放入aaa
即: CPict *Tpict = new CPict();
memcpy(Tpict,m_pict,sizeof(CPict));

aaa.Add(Tpict);这样,语法没有错误,可是aaa里面所有元素的内容居然会和最新一次追加的元素的内容一样了!
也就是说,比如现在aaa[0]里的m_pict.i=1, 而当我新追加一个m_pict.i=2的m_pict以后,aaa[0]的m_pict.i也等于2了!
这是为什么?
之后,我改为:aaa.InsertAt(aaa.GetSize,Tpict)
还是一样的毛病,怎么办?
是不是m_pict开辟的内存块太大了?导致CObArray在内存中的拷贝出问题了?