24小时热门版块排行榜    

查看: 1111  |  回复: 6
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

edisondanny

金虫 (小有名气)

[求助] C++全局变量的设置

最近在写一个程序,由于调用的函数较多,就用了几个cpp文件和h文件,但是由于学艺不精,不知道如何设置全局变量,以便能在这几个cpp文件中通用。求解答,谢谢
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yalefield

金虫 (文坛精英)

老汉一枚

【答案】应助回帖

引用回帖:
6楼: Originally posted by edisondanny at 2012-11-22 10:14:28
你好,还想请问一下,如果在这里面我想设置常数,也是在整个项目中都能用,该怎么设置呢。比如定义很多个数组,数组的维度都是IMAX=70 ,这些数组都是全局变量,我的IMAX该在哪个地方定义?谢谢...

那就在一个a.h文件里,写
#define IMAX 70
然后,所有的.cpp都include这个a.h
注意:如果在其他.h中也用到了IMAX,那就要保证在每个include的地方,都要先include这个a.h。
7楼2012-11-22 12:00:08
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 7 个回答

yalefield

金虫 (文坛精英)

老汉一枚

【答案】应助回帖

★ ★ ★ ★ ★
感谢参与,应助指数 +1
edisondanny: 金币+5, ★★★很有帮助 2012-11-22 23:05:21
在一个.cpp(如a.cpp)中,在不属于任何类的地方,定义这个变量:
int g_myvar;
在一个.h文件中,如myglobal.h中,声明这个变量是extern的:
extern int g_myvar;

于是,在任何其他.cpp中,如x.cpp中:
(1)
#include "myglobal.h"
(2)
int someclass::somefunction()
{
    m_somevar = g_myvar * 3.141592653589793;
    return m_somevar;
}
2楼2012-11-20 11:07:14
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

edisondanny

金虫 (小有名气)

引用回帖:
2楼: Originally posted by yalefield at 2012-11-20 11:07:14
在一个.cpp(如a.cpp)中,在不属于任何类的地方,定义这个变量:
int g_myvar;
在一个.h文件中,如myglobal.h中,声明这个变量是extern的:
extern int g_myvar;

于是,在任何其他.cpp中,如x.cpp中:
(1) ...

我先试试看。谢了
3楼2012-11-20 12:43:12
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

libralibra

至尊木虫 (著名写手)

骠骑将军

【答案】应助回帖

★ ★ ★ ★ ★
感谢参与,应助指数 +1
edisondanny: 金币+5, ★★★很有帮助 2012-11-22 23:05:32
全局变量在一处定义,其他需要使用的文件直接'extern 变量名'就行
还有个办法就是把这些变量弄进一个结构体,然后修改需要使用的函数定义,把这个结构体当做参数传递进去
matlab/VB/python/c++/Java写程序请发QQ邮件:790404545@qq.com
4楼2012-11-20 17:24:58
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 0854复试调剂 276 +4 wmm9 2026-03-01 5/250 2026-03-02 06:41 by 汪!?!
[考研] 欢迎采矿、地质、岩土、计算机、人工智能等专业的同学报考 +4 pin8023 2026-02-28 6/300 2026-03-02 06:35 by 汪!?!
[基金申请] 成果系统访问量大,请一小时后再尝试。---NSFC啥时候好哦,已经两天这样了 +4 NSFC2026我来了 2026-02-28 4/200 2026-03-01 22:37 by 铁门栓
[考研] 26考研报考西工大材料308分求调剂 +3 weizhong123 2026-03-01 3/150 2026-03-01 21:42 by 公瑾逍遥
[考研] 274求调剂 +3 cgyzqwn 2026-03-01 6/300 2026-03-01 21:24 by cgyzqwn
[考研] 化工299分求调剂 一志愿985落榜 +5 嘻嘻(*^ω^*) 2026-03-01 5/250 2026-03-01 19:47 by 无际的草原
[考研] 298求调剂 +6 axyz3 2026-02-28 6/300 2026-03-01 19:00 by 18137688336
[考研] 272求调剂 +6 材紫有化 2026-02-28 6/300 2026-03-01 18:58 by 18137688336
[考博] 26申博 +4 想申博! 2026-02-26 6/300 2026-03-01 17:32 by 想申博!
[考研] 化工专硕348,一志愿985求调剂 +5 弗格个 2026-02-28 8/400 2026-03-01 17:25 by sunny81
[基金申请] 刚录用,没有期刊号,但是在线可看的论文可以放为代表作吗 10+3 arang1 2026-03-01 3/150 2026-03-01 16:43 by babero
[考研] 303求调剂 +4 今夏不夏 2026-03-01 4/200 2026-03-01 14:46 by 嘟嘟小浣熊
[考研] 课题组接收材料类调剂研究生 +3 gaoxiaoniuma 2026-02-28 4/200 2026-03-01 14:30 by jjj三跨
[考研] 295复试调剂 +3 简木ChuFront 2026-03-01 3/150 2026-03-01 14:27 by zzxw520th
[考研] 298求调剂 +9 人间唯你是清欢 2026-02-28 12/600 2026-03-01 14:23 by Ducount.Y
[考研] 311求调剂 +9 南迦720 2026-02-28 10/500 2026-03-01 10:55 by sunny81
[论文投稿] 求助coordination chemistry reviews 的写作模板 10+3 ljplijiapeng 2026-02-27 4/200 2026-03-01 09:07 by babero
[考研] 材料调剂 +4 爱擦汗的可乐冰 2026-02-28 4/200 2026-03-01 00:38 by 猫猫球alter
[考研] 304求调剂 +3 52hz~~ 2026-02-28 5/250 2026-03-01 00:00 by 52hz~~
[硕博家园] 【博士招生】太原理工大学2026化工博士 +4 N1ce_try 2026-02-24 8/400 2026-02-26 08:40 by N1ce_try
信息提示
请填处理意见