VC数据库开发日记4:MFC框架下的全局变量的临时解决方案

MFC和很多C++书上说的全局变量不一样。不是仅在写在函数外就可以了,MFC的运行机制完全不一样。我对MFC的机理还没做到完全的理解,而现在两个窗体之间需要有数据“通信”,也就是需要一个公共变量来做媒介,时间十分紧张,容不得我慢慢的理解然后解决。 

 

那么我只有有现有的知识来解决了,ok废话少说,下面开始:

全局变量的特点就是在程序的运行期间都存在,而记得在看候杰书上曾经提到:

MFC有一个CXXAppXX为工程的名字,如我这个就是CRSApp)的类,还有一个这个类的对象,然后好像在“MFC六大关键技术仿真”中提到有一个AfxGetApp()这个全局函数可以得到当前这个对象的指针,那么只有在App类上下点功夫了。

 

       CRSApp加上一个类的成员变量我这里用PubCurID做例子(RS就是工程的名字,具体情况不一样。)

       然后在使用的地方

使用这个相应类的指针就接收就可以了。

 

解决感受:

这个解决方案不是很好,但是的确有效,缺点明显在CRSApp的成员中加上了没什么关系的变量,可能回影响程序的直观行,虽然也考虑过定义一个H文件然后在用和定义的地方都include进去。而然,事情远远超过我的预料,这个办法不是那么有用:extern 到处用,还是到处抱错,我意识道可能会导致全局的问题,继而程序不可维护因此放弃。“真理是有条件的”恐怕说的就是这么回事吧。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值