zoukankan      html  css  js  c++  java
  • 在MFC中使用一个单独的类实现数据在各个类之间的传递

    第一步:使用VS2010创建一个基于MFC的单文档程序,然后  编译 运行 确定没有问题。


    第二步:添加一个名叫CGszCommonData  类。


     第三步:在应用程序类的头文件里 添加#include "GszCommonData.h"

    // TestGsz.h : TestGsz 应用程序的主头文件
    //
    #pragma once
    
    #ifndef __AFXWIN_H__
    	#error "在包含此文件之前包含“stdafx.h”以生成 PCH 文件"
    #endif
    
    #include "resource.h"       // 主符号
    #include "GszCommonData.h"
    
    // CTestGszApp:
    // 有关此类的实现,请参阅 TestGsz.cpp
    //



    第三步:

    在类CGszCommonData添加一些变量,这些变量起到了不同类之间传递数据的作用。

    //CGszCommonData的头文件应包含在应用程序类的头文件中,这样在其它类中引用CGszCommonData类时就不需要再包含了。
    #pragma once
    class CGszCommonData
    {
    public:
    	CGszCommonData(void);
    	~CGszCommonData(void);
    
    
    //声明一些全局的变量或者是函数
    public:
    	static int xGsz; //定义性声明一个全局 整型变量 
    	static int fGsz(int y); //声明一个全局函数
    };
    


    第四步:在CGszCommonData的实现文件里  给变量赋值 或是 给函数下定义

    #include "StdAfx.h"
    #include "GszCommonData.h"
    
    ///变量的赋值部分
    int CGszCommonData::xGsz = 11; //初始化全局变量
    
    ///函数的定义部分 
    CGszCommonData::CGszCommonData(void)
    {
    }
    
    CGszCommonData::~CGszCommonData(void)
    {
    }
    int CGszCommonData::fGsz(int y) //全局函数,这里不要再加static
    {
    	y++;
    	return y;
    }



    第五步:在那个希望可以交互数据的那个类的头文件里面 包含全局数据交换类的头文件。

    此处我选择的 是应用程序类的的头文件里面

    然后 创建一个变量 ,用于接收 GszCommonData里面的数据

    public:
    	int GszaSend;

    第六步:在应用程序类实现文件的初始化函数里面添加 下面程序


    m_pMainWnd->ShowWindow(SW_SHOW);
    	m_pMainWnd->UpdateWindow();
    	// 仅当具有后缀时才调用 DragAcceptFiles
    	//  在 SDI 应用程序中,这应在 ProcessShellCommand 之后发生
    
    	GszaSend=CGszCommonData::xGsz;
    	GszaSend=GszaSend+1;
    
    	return TRUE;



    第七步: 运行监控效果。




    全套源代码:http://pan.baidu.com/s/1pJDiT0R

    IDE:VS2010

    系统:Windows7 64位




  • 相关阅读:
    Vue动态路由配置-router.addRoute
    安装nginx(Centos和docker)
    前后端分离跨域问题解决方案
    centos7 部署 gitlab
    date命令使用方法
    电脑明明安装了模块,但是pycharm还是找不到怎么办
    shell脚本中字符串截取问题
    linux中每登录一个终端,就会自动执行脚本
    腾讯文档中怎么添加二级缩进符号
    查看CPU某一核的情况
  • 原文地址:https://www.cnblogs.com/wenluderen/p/4246609.html
Copyright © 2011-2022 走看看