在View中新建对话框,然后在对话框的onok中定义:
CM_XXXView* m_pView = (CM_XXXView* )GetParent();
获得视图指针但只要是对该视图指针中的数据进行操作,如m_pView->item_index ++就会在整个应用程序关闭时出错,为什么呢?视图指针的对象是在什么时候建立和销毁的呢?

解决方案 »

  1.   

    你不能写一个函数setindex,供调用啊?在调用前用ASSERT(pview),
      

  2.   

    在调用m_pView->item_index ++前用ASSERT(pview), 看看m_pView是不是已经能够被销毁了 是的话就改一改代码 确保调用之前 m_pView有效
      

  3.   

    CM_XXXView* m_pView = (CM_XXXView* )GetParent();
    获得视图指针
    这样子不保险。最好是在对话框中定义 CM_XXXView *m_pView;
    然后对话框的构造函数中增加视图参数。这样,让对话框启动时,视图类将其this对象传递给对话框,肯定不会有问题。
      

  4.   

    学习了,
    我想问下楼主在对话框中是怎样包含进*View.h的?我添加#include "*View.h"出错呀