我声明了一个CCISDBDlg基类为CDialog,
       有声明了一个Loginfrm类,基类也为CDialog,
现在我想在CCISDBDlg类中访问Loginfrm中的成员变量ServerIp,应该怎么访问?
       Loginfrm *pf =(Loginfrm *)AfxGetApp();
       CString  ip =pf->ServerIp;
发生访问冲突!~请问如果我要访问ServerIp应该怎么写才能够得到ServerIp的值!(我想用指针)

解决方案 »

  1.   

    如果 ServerIp 是 public 的, 那应该可以访问啊 .
      

  2.   

    错误在 Loginfrm *pf =(Loginfrm *)AfxGetApp(); 这样得到的是 App 而不是 CDialog 对象
      

  3.   

    ServerIp 是 public 的
    但是我运行的时候怎么 在CString  ip =pf->ServerIp出现访问冲突
    Loginfrm *pf =(Loginfrm *)AfxGetApp();//这句应该怎么改正?
      

  4.   

    Loginfrm *pf =(Loginfrm *)(AfxGetApp()->m_pCCISDBDl);//
      

  5.   

    Loginfrm 和 CCISDBDlg 什么关系呢?看名字是在做登陆对话框吧1. Loginfrm若是主对话框,Loginfrm *pf =(Loginfrm *)AfxGetMainWnd();
    2. CCISDBDlg若是主对话框:
    若Loginfrm不存在,Loginfrm销毁之前,将ServerIp单独取出保存
    若Loginfrm还存在,可用Loginfrm *pf = (Loginfrm *)FindWindow(NULL,Loginfrm标题);
      

  6.   

    Loginfrm *pf =(Loginfrm *)(AfxGetApp()->this);//这样,行不?
      

  7.   

    楼上的AfxGetApp()->找不到this指针 !~~