buctwh2010 2015-03-27 03:15 采纳率: 100%
浏览 1959
已采纳

mfc,c++,不同类之间的变传递

MFC程序中, 不同类之间的变量是怎么传递的?比如我有两个类:
1.a,h/a,cpp
2.b,h/b,cpp
现在有两种情况:
情况1:
在a,cpp里定义了一个 double 变量叫做 tempvalue, 经过一些处理之后,我想把
tempvalue的值传到b,cpp使用,那么该如何传递此变量?
情况2:
在a,h里定义了一个Public变量叫做 pubvalue, 现在同样想把此变量传到
b,cpp里,怎么该怎么办?
可不可以举例说明?

  • 写回答

3条回答 默认 最新

  • bl1-9 2015-03-30 08:47
    关注

    一般的写法:
    1:在a.cpp里定义了一个 double 变量叫做 tempvalue,如果你不是在函数中定义的,那么tempvalue是全局变量,b.cpp 中 写上extern double tempvalue 以后就可以直接使用tempvalue了。你也可以让a提供一个静态函数,返回这个全局对象tempvalue,b需要包含a.h以后直接调用。
    2:在a.h里定义了一个Public变量叫做 pubvalue,那么pubvalue是a类的成员对象,如果b想用a.h里定义的pubvalue,那么b必须能拿到a的对象才能使用pubvalue。如果pubvalue是静态的那可以在a类中提供一个静态函数。pubvalue隶属于a类对象,每个a对象的pubvalue都是独立的。不知道这么说你能不能明白。b需要拿到a对象,否则是拿不到a的成员变量的,如果a只有一个对象,或者你只关心某个a对象的pubvalue,那么你可以在a.cpp中建立一个全局对象类似于tempvalue,然后b像方法1一样使用。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度
  • ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测
  • ¥15 ETLCloud 处理json多层级问题
  • ¥15 matlab中使用gurobi时报错
  • ¥15 这个主板怎么能扩出一两个sata口
  • ¥15 不是,这到底错哪儿了😭
  • ¥15 2020长安杯与连接网探
  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么