社区
C语言
帖子详情
谈谈大家是如何避免使用全局变量,有时候又不得不使用全局变量的
wxdcxp
2010-06-11 05:53:24
如题
...全文
2906
44
打赏
收藏
谈谈大家是如何避免使用全局变量,有时候又不得不使用全局变量的
如题
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
44 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
shangyangi
2010-06-13
打赏
举报
回复
定义为static 形式,在函数调用时,以形参传递。
wangxipu
2010-06-13
打赏
举报
回复
Google的代码规范中
拒绝使用全局变量
haierpro
2010-06-13
打赏
举报
回复
灰常灰常不喜欢用全局变量。一般两种方法替代:
1.声明一放全局变量的结构,然后在入口函数处声明该结构为局部变量或动态分配内存,然后把这个结构的指针作为每个函数的参数。这样既方便移植又节省内存。
2.如果是要在已有的代码中加全局标记,我会在一个单独的文件内声明static的全局变量,然后定义专门用于访问这些变量的全局函数,函数内部可以做线程同步或数据过虑或数据有效性检查等。
个人觉得这样做,在程序移植和涉及多线程序方面时会方便很多。
happytang
2010-06-13
打赏
举报
回复
双刃剑,有利有弊
但是少用的原则是通用的
aperson111
2010-06-13
打赏
举报
回复
我最近迷上了用单例。。。这样貌似可以少使用全局变量
Simao
2010-06-13
打赏
举报
回复
真是牛人多多...
Oversense
2010-06-13
打赏
举报
回复
全局变量,想用就用,
你的程序,你做主,欧也
FingerStyle
2010-06-13
打赏
举报
回复
class XXX
{
static int xx;
static int yy;
}
XXX::xx
我一半这样用
wxdcxp
2010-06-12
打赏
举报
回复
[Quote=引用 23 楼 xianglitian 的回复:]
我从来不用全局变量
[/Quote]
你是如何做到的?用函数参数,还是函数返回值,或者其他的
liutengfeigo
2010-06-12
打赏
举报
回复
//lthyxy: C里面不用全局是比较难。
顽固已死_有事烧纸
2010-06-12
打赏
举报
回复
[Quote=引用 23 楼 xianglitian 的回复:]
我从来不用全局变量
[/Quote]
我这里到处是全局变量
zhouzhenhe2010
2010-06-12
打赏
举报
回复
一不小心就被修改 但有时就故意要修改
yangzhifu
2010-06-12
打赏
举报
回复
对,有时候传参数的确是很麻烦,如果一个全局变量用的多还的多多考虑加锁的问题
ww884203
2010-06-12
打赏
举报
回复
我刚刚就写了用全局变量的小程序。
其实我也可以不用,把它当成参数传递来传递去,但是想想没有意义,就还是用了全局变量
tang21814
2010-06-12
打赏
举报
回复
感觉C不用全局变量很难很难
只能说能不用尽量不用吧
实在需要用好好控制就好
走好每一步
2010-06-12
打赏
举报
回复
公司代码中全局变量多到不行(c语言),有时候挺痛苦的,不过后来想想,习惯吧。
liuenhai211
2010-06-12
打赏
举报
回复
尽量不要用
最好写类的公有成员函数来调用私有的成员变量
向立天
2010-06-12
打赏
举报
回复
我从来不用全局变量
mskmc_mc
2010-06-12
打赏
举报
回复
静态成员
huanmie_09
2010-06-12
打赏
举报
回复
[Quote=引用 5 楼 zhangweiit 的回复:]
在实际项目中
都是多多少少会用一些全局变量的
特别是在C的项目中,怎么可能不用呢?
也许有人说可以不用,但是,那要看代价了
C++的项目做得好的,确实可以避免
我们用,但是,少用
同时,要注意命名规范
一定会有g_的前缀
也尽量把全局变量,包装在struct里面,便于管理
一些C++项目,没有全局变量,或是很少
因为,在main里面,声明一个app对象就可以了
这是……
[/Quote]
up!
加载更多回复(24)
Javascript:
谈谈
JS的
全局变量
跟局部变量
今天公司一个实习小妹子问我两段JS代码的区别:[javascript] view plain copy [javascript] view plain copy 我想,好简单呀,不就是
全局变量
跟局部变量的scope问题吗?我说:"当
全局变量
跟局部变量重名时,局部变量的scope会覆盖掉
全局变量
的scope,当离开局部变量的scope后,又重回到
全局变量
的scope。所以两段代码运行的结果分别为:1
android
全局变量
转js,Javascript:
谈谈
JS的
全局变量
跟局部变量【转】
两段JS代码的区别:vara="Hello";functiontest(){vara;alert(a);a="World";alert(a);}vara="Hello";functiontest(){alert(a);a="World";alert(a);}我想,好简单呀,不就是
全局变量
跟局部变量的scope问题吗?我说:"当
全局变量
跟局部变量重名时,局部变量的scope...
谈谈
JS的
全局变量
跟局部变量
今天公司一个实习小妹子问我两段JS代码的区别: [javascript] view plaincopy "text/javascript"> var a = "Hello"; function test(){ var a; alert(a); a = "World"; alert(a); }
vue 为
全局变量
赋值_揭开 vue 背后的秘密(1)
昨天写了关于 react 如何j将 jsx 渲染到界面,今天朋友让我来
谈谈
vue,个人对于 vue 研究还是最近的事。说到 angular、react 和 vue 这三个前端主流框架,最先先接触的是 Angular ,随后是 react ,vue 是这两年市场对 vue 需求增加,所以也
不得不
看一看 vue 这个以轻巧而流行的前端框架。最近听了 Evan 关于 vue3 介绍,vue3 还是...
Python实战:58租房信息爬取与高德地图可视化系统开发指南
通过爬虫自动获取58同城租房数据、利用高德地图进行房源可视化展示、以及工作地点通勤分析功能。系统采用PyQt5、requests等库开发,详细说明了环境配置、核心代码实现(包括房源爬取模块、本地服务器搭建和地图可视化)以及实战操作步骤(从数据爬取到地图API配置)。该系统可帮助用户快速分析租房信息与通勤情况,所有功能均可在Windows环境下通过简单配置运行。
C语言
70,023
社区成员
243,263
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章