为什么说过分依赖外部变量会导致一定的风险?为什么说它会使程序中的数据关系模糊不清?为什么在函数中使用外部变量会使函数失去通用性?
2 回答
L49579
TA贡献3条经验 获得超1个赞
外部变量存储在数据段中,内部变量(局部变量)存储在堆栈中。局部变量是动态申请空间,即调用函数时动态生成,函数结束时释放,因此,它的作用域在函数中。外部变量和静态变量存储在数据段中,运行程序时存在,程序运行结束时才结束。在设计程序时尽量避免使用全局变量或静态变量,使得程序可移植度高。
luofuxiang
TA贡献34条经验 获得超34个赞
使用外部变量,当程序规模达到一定程度的时候,可能存在与局部变量重名等问题。
外部变量作用方位很广,它增加了程序各功能块直接的耦合度(不符合高内聚低耦合原则)。
某个函数中假设使用了外部变量,当想要将这个函数移植到其它程序中去的时候,由于其它程序没有该函数使用的外部变量,会导致函数失效,失去通用性。
总之,外部变量能不用尽量不用,函数各功能块之间应该通过传参数和返回值来达到数据交互的效果。
- 2 回答
- 0 关注
- 1347 浏览
添加回答
举报
0/150
提交
取消