zoukankan      html  css  js  c++  java
  • MFC一个类访问另一个类成员对象的成员变量值

    MFC中一个类要访问另外一个类的的对象的成员变量值,这就需要获得原来那个类对象的指针,其实有好几种方法都可以实现。

    比如维护一个单例模式、设置静态变量等等。我们这里举个列子,实现多个类之间的相互访问。

    一、示例:创建MFC对话框,实现对个对话框之间数据访问

    1. 我们创建一个MFC对话框应用程序,命名为Visit工程.
    2. 对话框本身有一个主界面(CVisitDlg对话框),那我们再添加一个新界面CXXXDlg.

    二、在主界面CVisitDlg类的头文件中,添加一个static CVisitDlg *s_pDialog;指针

    由于这个指针式静态的,我们需要在类外初始化,那么我们在CVisitDlg .cpp文件中,写上一行初始化代码,直接初始化为空,如下:

    CVisitDlg *CVisitDlg::s_pDialog = NULL; //(注意要写在类外,不要写在类实现函数里面)。

    三、然后需要在CVisitDlg 主对话框生成的时候,给这个指针赋值为主对话框指针。

    那么,我们可以在CVisitDlg 类的构造函数或者OnInitDialog()函数里面写上如下一句代码:

    s_pDialog = this;

    好了,现在我们只要在其他的类里面获得这个静态指针,就可以访问这个类里面的所有数据了~~~~

    四、获得静态指针

    假设,我们想在CXXXDlg类中访问CVisitDlg类的数据,如下代码轻轻松松搞定:

    CVisitDlg *pDia = CVisitDlg::s_pDialog;

  • 相关阅读:
    WinCMD color命令
    WinCMD if命令(批处理Dos 大于、小于、等于)
    WinCMD 常用命令
    AIFramework基本概念整理
    AICompiler动态shape编译框架
    深度学习编译与优化Deep Learning Compiler and Optimizer
    NNVM Compiler,AI框架的开放式编译器
    Tengine AIFramework框架
    Tvm一些基本技术
    北汽蓝谷和北汽新能源
  • 原文地址:https://www.cnblogs.com/perfy/p/5329630.html
Copyright © 2011-2022 走看看