learner_pu 2017-04-20 23:32 采纳率: 20%
浏览 6662
已采纳

为什么不能使用全局变量来在函数间传递函数和结果

为什么不能使用全局变量来在函数间传递函数和结果,大神求解答,

  • 写回答

12条回答 默认 最新

  • threenewbee 2017-04-21 00:37
    关注

    可以这么做,但是这是不好的习惯。有几个原因:
    全局变量只有一个,如果你的函数存在递归调用,那么将导致程序错误。
    同样的原因,全局变量导致多线程的程序无法并发执行。
    使用全局变量使得函数存在副作用(调用一个函数,对函数以外的数据/状态的改变,称之为副作用),这使得对函数调用顺序敏感的代码结果变得不可预测。降低代码的可读性。
    依赖全局变量的函数,没办法单独提取出来,在另一个项目中不加更改的重复使用。
    使用全局变量的函数,它很难单独地测试。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(11条)

报告相同问题?

悬赏问题

  • ¥15 R语言绘制生存曲线时出现警告:All aesthetics have length 1, but the data has 2 rows.
  • ¥15 pyqt怎么把滑块和输入框相互绑定,求解决!
  • ¥20 wpf datagrid单元闪烁效果失灵
  • ¥15 券商软件上市公司信息获取问题
  • ¥100 ensp启动设备蓝屏,代码clock_watchdog_timeout
  • ¥15 Android studio AVD启动不了
  • ¥15 陆空双模式无人机怎么做
  • ¥15 想咨询点问题,与算法转换,负荷预测,数字孪生有关
  • ¥15 C#中的编译平台的区别影响
  • ¥15 软件供应链安全是跟可靠性有关还是跟安全性有关?