第一步:使用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位