kevinCK的个人空间 https://blog.eetop.cn/158558 [收藏] [复制] [分享] [RSS]

空间首页 动态 记录 日志 相册 主题 分享 留言板 个人资料

日志

怎么在MFC里面声明全局变量或者函数

已有 3680 次阅读| 2007-11-6 09:01

天气: 晴朗
心情: 高兴

我们可以在CWinApp的派生类中声明静态成员变量或者成员函数,那么就可以从所有的类去访问他们:

例如:

// MyApp.h

class CMyApp : public CWinApp

{

public:

  CMyApp();

 

  static int g_nMyVariable;      // 声明一个全局变量

  static void g_MyFunction();    // 声明一个全局函数

  ...

  etc

  ...

};

// MyApp.cpp

int CMyApp::g_nMyVariable = NULL;     // 全局变量定义和初始化 CMyApp::g_MyFunction()        // 全局函数定义

{

}

现在,这个变量和函数就可以从其他类中通过如下的语法访问:

CMyApp::g_nMyVariable 和 CMyApp::g_MyFunction

全局变量一般这样定义:
1。在一类的.cpp中定义 int myInt;
然后再在要用到的地方的.cpp里extern int myInt;这样就可以用了。

2。在stdafx.cpp中加入:
int myInt;
然后在stdafx.h中加入:
extern int myInt
这样定义以后无论在什么文件中都是可见的.

3。比较规范的是,先定义一个Glbs.h,把所有的全局变量原始定义放进去。然后定义一个Externs.h,把你先前定义在Glbs.h中的变量都加上extern。注意:如果你在Glbs.h中设置了初值,那么在Externs.h中就不要加值了。然后调用时,第一次调用的#i nclude <Glbs.h>,以后调用的#i nclude <Externs.h>


点赞

评论 (0 个评论)

facelist

您需要登录后才可以评论 登录 | 注册

  • 关注TA
  • 加好友
  • 联系TA
  • 0

    周排名
  • 0

    月排名
  • 0

    总排名
  • 0

    关注
  • 1

    粉丝
  • 0

    好友
  • 0

    获赞
  • 1

    评论
  • 130

    访问数
关闭

站长推荐 上一条 /2 下一条


小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-27 07:29 , Processed in 0.021970 second(s), 13 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
返回顶部