显然,人们对于这个问题有许多不同的意见,从“永远不要使用全局变量!即使只是一个宏也要封装起来!”到“没有什么大不了的——在需要时使用它们比不使用更方便。”
因此,需要具体而明确的原因(最好附带示例):
- 为什么全局变量是危险的
- 在何时应该使用全局变量代替其他选项
- 那些想要不适当地使用全局变量的人有哪些替代方法
虽然这是主观的,但我会选择一个答案(对我来说最能代表每个开发者与全局变量之间的爱恨关系),而社区将投票选出他们认为最好的答案。
我认为新手有这样的参考资料很重要,但如果存在与您的答案实质上相似的另一个答案,请不要混淆它——可以添加评论或编辑其他人的答案。