如题,我的函数是public,在app里定义的公有函数,只要定义app类变量指针就可以引用.
那在模态对话框里该怎么调用另一个对话框里的public函数呢.
我的做法是:在模态对话框里 a 定义另一个对话框 b 类变量
   Cb* abb;
  abb->c();
这样做一运行就出错.不知道这样做对不对?应该怎么做呢?
谢谢各个大虾

解决方案 »

  1.   

    当然不行,
    Cb* abb;
      abb->c();
    中的abb是一指针,你又没有创建对象,还是一个野指针呢,没办法用,你可以在a类中定义Cb *abb;同时,要获得一个b类的对象才行.
      

  2.   

    CCCC *dlg=new CCCC;
    dlg->Create(IDD_DIALOG1);
    dlg->ShowWindow(SW_SHOW);
    dlg->c();
      

  3.   

    Cb* abb;
    abb->c();
    改为
    Cb abb;
    abb.c();
    实在不行就把需要调用的函数自定义一个头文件,放在里面这样肯定能行。
      

  4.   

    可以这样,在b中定义一个自己的指针对象Cb *b;在构造函数中初始化b=this;
    然后在a的cpp中extern Cb *b;(也可以把这句放在工程的头文件中,这样在那里都可以直接用了),然后就可以用这个b指针来操作b中公有的东西了
      

  5.   

    1、直接把Cb的指针在CA DoModal之前作为变量传进去
    2、也可以把Cb的指针放在app里,这样Ca可以从app里取得Cb的指针
      

  6.   

    哦对了。我忘了说,另一个也是模态对话框,使用方法也是一样的吗?dayong576(DL牛比的蛋)
    Cb abb;
    abb.c();
    这个方法早试过了不行,因为这样做是建立了个新的类实例,所以应该不行。livedeal(怀念) 
    CCCC *dlg=new CCCC;
    dlg->Create(IDD_DIALOG1);
    是针对非模态对话框的,不知道模态可以这样使用吗?感觉好象不行。我试试 starytx(做人要低调)  和 ouyh12345(五岭散人) 方法,等结果出来再上来说哈。谢谢各个了哈