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里,怎么该怎么办?
可不可以举例说明?
一般的写法:
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一样使用。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。