为了账号安全,请及时绑定邮箱和手机立即绑定

有关外部变量

有关外部变量

C
qq_不睡觉的怪叔叔_0 2016-07-31 08:20:20
为什么说过分依赖外部变量会导致一定的风险?为什么说它会使程序中的数据关系模糊不清?为什么在函数中使用外部变量会使函数失去通用性?
查看完整描述

2 回答

?
L49579

TA贡献3条经验 获得超1个赞

外部变量存储在数据段中,内部变量(局部变量)存储在堆栈中。局部变量是动态申请空间,即调用函数时动态生成,函数结束时释放,因此,它的作用域在函数中。外部变量和静态变量存储在数据段中,运行程序时存在,程序运行结束时才结束。在设计程序时尽量避免使用全局变量或静态变量,使得程序可移植度高。

查看完整回答
反对 回复 2016-08-04
?
luofuxiang

TA贡献34条经验 获得超34个赞

  1. 使用外部变量,当程序规模达到一定程度的时候,可能存在与局部变量重名等问题。

  2. 外部变量作用方位很广,它增加了程序各功能块直接的耦合度(不符合高内聚低耦合原则)。

  3. 某个函数中假设使用了外部变量,当想要将这个函数移植到其它程序中去的时候,由于其它程序没有该函数使用的外部变量,会导致函数失效,失去通用性。

    总之,外部变量能不用尽量不用,函数各功能块之间应该通过传参数和返回值来达到数据交互的效果。

查看完整回答
反对 回复 2016-07-31
  • qq_不睡觉的怪叔叔_0
    qq_不睡觉的怪叔叔_0
    请问什么是耦合度呢?
  • luofuxiang
    luofuxiang
    耦合度描述的是程序个功能块之间的关联程度,关联程度越大耦合度越高,程序可维护性越差,程序设计的时候应尽量降低耦合度。耦合性、内聚性的内容楼主可以参看软件工程相关的书籍。
  • 2 回答
  • 0 关注
  • 1347 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信