C++ 为什么不鼓励使用全局变量
展开全部
因为全局变量容易导致代码的可复用性下降,以及对象管理的困难。
试想,如果某个类使用了全局变量,则移植该类的时候,必须将全局变量也一起移植。更可怕的是,如果这个全局变量还是一个对象,并且初始化也在不同的类中实现,那么所有这些代码将被永久捆绑在一起,无法分离了。任何一个与此全局变量相关联的代码一旦有改动,即可对其他使用该变量的代码产生不可预知的影响。
相较于全局变量,用户可以使用单例来替代,并且保证单例的初始化只在本类方法中实现,外部只是单纯的获取或者暂存。这种方式可以降低全局变量带来的麻烦。
试想,如果某个类使用了全局变量,则移植该类的时候,必须将全局变量也一起移植。更可怕的是,如果这个全局变量还是一个对象,并且初始化也在不同的类中实现,那么所有这些代码将被永久捆绑在一起,无法分离了。任何一个与此全局变量相关联的代码一旦有改动,即可对其他使用该变量的代码产生不可预知的影响。
相较于全局变量,用户可以使用单例来替代,并且保证单例的初始化只在本类方法中实现,外部只是单纯的获取或者暂存。这种方式可以降低全局变量带来的麻烦。
展开全部
全局变量可以被所有的函数访问,所以全局变量的值(正确的、安全的)可能会被其他的函数无意间修改。程序的行为依赖值得正确,如果全局变量的值被无意或者恶意修改就会导致问题。所以,不推荐使用全局变量。基于此,某些编程语言是不允许修改变量的值的.(一旦第一次赋值,就不能再修改变量的值了)
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1 全局变量是很好。
2 但是有缺点:容易被修改错,尤其在工程很大的时候。
3 使用时一定要控制好全局变量的修改。
4 不过小工程小项目使用全局变量是很方便的!
2 但是有缺点:容易被修改错,尤其在工程很大的时候。
3 使用时一定要控制好全局变量的修改。
4 不过小工程小项目使用全局变量是很方便的!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
全局变量不易于管理,不像局部变量,在函数调用结束后会自动释放
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不用全局变量,就是纯粹的面向对象思想
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询