首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用属性页数组MFC C++创建无模式属性表

使用属性页数组MFC C++创建无模式属性表
EN

Stack Overflow用户
提问于 2013-10-20 15:02:14
回答 2查看 557关注 0票数 0

我正在创建一个从CMFCPropertySheet派生的属性表,它是在调用初始编辑器页面时从大型机创建的。我的问题是,当一个额外的页面被调用时,我希望为它创建一个新的选项卡。调用的每个页面都将由相同的类派生,但最大页面数未知,因此需要定义为

代码语言:javascript
复制
    CEditorPage *m_editorpage[];

但是编译器抱怨它使用的是一个零大小的数组。在析构函数中,我删除了在for循环中创建的从0到表中页数的页面。在post delete中,我删除了this指针。程序崩溃并在以下位置停止

代码语言:javascript
复制
    delete this;

如果我不使用数组,它就不会崩溃。但是因为我在每个属性页中使用相同的类页面,并且我不知道会有多少个,所以我需要使用一个大小为零的数组。无论哪种方式,我都会遇到内存泄漏。

如何在属性页中创建一个大小为零的基于CMFCPropertyPage的数组,以便在运行时添加额外的页,并在属性页关闭时执行适当的清理。在我尝试过的每个方法中,我要么崩溃,要么内存泄漏。

EN

回答 2

Stack Overflow用户

发布于 2013-10-22 10:42:52

尝试使用动态数组

代码语言:javascript
复制
CEditorPage *m_editorpage = new CEditorPage[_num_of_editorpage];
....
delete[] m_editorpage ;
票数 1
EN

Stack Overflow用户

发布于 2013-10-20 20:54:57

使用std::vector类或类似类如何?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19474778

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档