性能优化简记十三(全局变量优化)
头条
SEO资讯 2019-02-09 12:00:02 字数:1176

通常情况下,在函数中使用全局变量会降低性能,原因有二,一是全局变量在内存分布中存储在数据区,而与代码区,堆栈区相距甚远。对于一个函数来说,如果有全局变量,则需要访问数据区,会造成额外的地址转换。二是编译器为了安全性,保守优化。因为编译器会认为该变量可能同时被其他函数调用,所以不敢做太多的优化。所以,为了代码耦合性以及安全性能,维护性等,都建议使用较少的全局变量数量。

性能优化简记十三(全局变量优化)

可以采用下面的方式,减少全局变量的使用。

  • 合并全局变量

将多个有关联的全局变量整合成一个全局结构体对象,这样有助于提升代码的空间局部性,减少地址转换次数。

  • 使用静态局部变量

如果该全局变量只在一个函数中调用,则可以改为静态局部变量,增加编译器的潜在优化能力,程序也显得简洁干净。

通常情况下,全局变量要使用static限定到本模块中,通过封装函数提供对外接口,增加代码的耦合性与安全性。

欢迎关注媒体号没隆隆,分享编程知识,一起学习进步
0人参与回答
  • 未添加任何数据~~

提示信息

联系电话:
1585150508*
QQ交谈:
小编
站长微信:
站长邮箱: service@qingjiuzhubei.com