MDI中申请内存空间,删除问题
我在一个MDI工程中,在一个
CAa.h中声明一个类CAa,
class CCxmk : public CObject
{
public:
CString ss;
CAa();
virtual ~CAa();
};
extern CAa* CAA[10];
CAa.cpp中
CAa* CAA[10];
在CMyDOC.cpp中#include CAa.h
CMyDOC.cpp件中中的一个函数中,AA[0] = new CAa;AA[1] = new CAa;
我在~CMyDOC()中delete AA[0],delete AA[1],在只打开一个文档时没有问题,在打开2个以上时,关闭是,系统会报错
分析了一下,是第一个文档的AA[0]的地址和第二个文档AA[0]的地址都是同一个0x470b00,在关闭第2个文档时,去delete同一个内存空间,报错的,
我想请问一下
1、AA[0],AA[1]的内存在哪里delete好
2、对于MDI文档的程序,为什么文档1,文档2申请的AA[0],AA[1]的内存地址都是一样的,文档1和文档2中AA[0],AA[1]的内容都是不一样的,怎么区分
3、还有我想在CMyDoc.cpp中使用CAa这个类,除了声明全局变量外还有什么好办法,
4、这个AA[0],AA[1]在哪里new好一些,
谢谢了