全局变量的缺陷
全局变量如何处理——C++开发架构细节思考
一、全局变量应该尽量少用
1.因为全局变量会在程序初始化时进行初始化,增加启动耗时;
2.可能存在重定义的风险,让程序处于BUG之中;
2.会破坏代码的封装性;
3.会提高代码的耦合性;
4.提高代码的阅读难度;
最后三点,让代码无法维护。
二、全局变量的线程安全问题
如果全局变量在多个线程中访问,需要加锁。
三、全局变量的替代方案
1.单例模式
懒汉单例模式:程序初始化时,对对象进行初始化。
饿汉单例模式:对象再被使用时,对对象进行初始化。
如果为了降低启动耗时,可以考虑将全局变量转换为饿汉模式。