删除对象求扫盲?
我在程序中从CObArray派生一个变量m_data,用于存放用new动态产生的类对象,请问当我删除m_data后,其动态创建的类对象是否也删除了吗?,是否需要从m_data中提取对象指针来删除吗?,不删除会产生内存泄露吗?,请求大虾扫肓。 问题点数:50、回复次数:7Top
1 楼trojan(特洛伊人)回复于 2000-11-03 17:07:00 得分 20
当m_data删除后,动态产生的类对象本身并不删除,如果需要删除,应在删除m_data之前,用delete操作删除它所包容的对象指针所指的对象。Top
2 楼vcmfc(【痛苦的虫虫】)回复于 2000-11-04 13:05:00 得分 0
可是在IDL环境下使用GO却没有报告内存泄露?Top
3 楼easypaper()回复于 2000-11-04 23:37:00 得分 30
自己手动删除
int nCount = m_data.GetSize();
for (int i = 0; i < nCount; i++)
{
delete m_data[i];
}
Top
4 楼vcmfc(【痛苦的虫虫】)回复于 2000-11-05 10:02:00 得分 0
我只想知道如果不调用delete m_data[i]会不会产生内存泄露?Top
5 楼easypaper()回复于 2000-11-05 10:32:00 得分 0
当然或产生内存泄漏。使用调试运行的时候,你会得到很多内存泄漏报告。Top
6 楼FireAngel(土豆)回复于 2000-11-05 10:34:00 得分 0
我靠,你也太吝啬了吧,手上这么多分,问一个问题就只给了5分,你不觉得很搞笑吗?Top
7 楼vcmfc(【痛苦的虫虫】)回复于 2000-11-05 14:24:00 得分 0
我靠,你要多少分,给我一个数目!Top




