24小时热门版块排行榜    

查看: 1305  |  回复: 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的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 时间戳又变了8-15 +11 archvillain 2026-08-15 20/1000 2026-08-15 17:47 by 医学老男孩
[考博] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +4 HFw0lei2R37i 2026-08-14 6/300 2026-08-15 17:34 by 7huP8NPKZCp9
[基金申请] 小木虫上这么多卖论文的,真有人买论文么?感觉没必要啊 +12 Tide man 2026-08-10 13/650 2026-08-15 16:34 by 氺木
[基金申请] 欢迎发来filecode的Mz6后的代码验证其规律 +27 医学老男孩 2026-08-13 58/2900 2026-08-15 15:57 by GZUZM
[基金申请] 哪位老哥知道今年的国自然具体哪一天放榜? +7 Ldrop2023 2026-08-13 7/350 2026-08-15 15:57 by mzhh2000
[论文投稿] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +3 k0dTPqJtl0jt 2026-08-14 5/250 2026-08-15 15:10 by QXtWNz7PI7wZ
[博后之家] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +3 k0dTPqJtl0jt 2026-08-14 3/150 2026-08-15 12:41 by KxMI1BYBxWX1
[考博] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +3 k0dTPqJtl0jt 2026-08-14 3/150 2026-08-15 12:33 by KxMI1BYBxWX1
[公派出国] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +3 k0dTPqJtl0jt 2026-08-14 5/250 2026-08-15 07:09 by 4wMiSEwB6436
[基金申请] 各位道友,我要去昆明玩几天,回来见。 +7 Tide man 2026-08-14 8/400 2026-08-15 01:11 by arzu_hma
[论文投稿] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +3 HFw0lei2R37i 2026-08-14 5/250 2026-08-15 00:16 by 4wMiSEwB6436
[基金申请] 奇怪,两个人的filecode固定段从头到尾一模一样 +8 布布和一二 2026-08-10 11/550 2026-08-14 14:58 by Equinoxhua
[基金申请] FileCode能看出啥? +10 要乐观耀哥 2026-08-10 32/1600 2026-08-14 09:37 by 要乐观耀哥
[基金申请] 我的国基提前知道中了,可是同事的操作让我实在接受不了,怎么会有这样的人 +10 家与远方 2026-08-10 15/750 2026-08-14 02:08 by 绵羊哥哥
[文学芳草园] 阿姨 +4 汪汪锅 2026-08-09 4/200 2026-08-13 19:43 by arzu_hma
[基金申请] 分享一下我之前已中青C的计划书的filecode +4 布布和一二 2026-08-11 5/250 2026-08-13 12:56 by cratir
[基金申请] 结合人工智能,周易传统文化,filecode打分制来了,3分以上希望很大。 +3 Tide man 2026-08-12 4/200 2026-08-13 08:35 by ZJTJZ
[基金申请] 2019年青年基金涵评意见,大家看看几个A,几个B? +11 Tide man 2026-08-11 11/550 2026-08-13 07:35 by 撸猫猫
[基金申请] 确定了,国自然21号放榜 +6 布布和一二 2026-08-10 7/350 2026-08-10 19:15 by 2000zf36392
[基金申请] 面上项目filecode邪修 +5 西山十月 2026-08-09 7/350 2026-08-10 07:32 by 仁砚薪传
信息提示
请填处理意见