Project1

标题: 在RGSS2中这两种计算哪种更快? [打印本页]

作者: TheRebirth    时间: 2012-1-22 13:05
标题: 在RGSS2中这两种计算哪种更快?
本帖最后由 TheRebirth 于 2012-1-22 20:08 编辑

①a = a + 3

②a += 3

同是+3,而C语言相关教程则说:
"①进行了两次计算"
"②调用了函数两次"
"影响较小,但许多计算合在一起会大幅增加开销,降低程序运行效率."dsu_plus_rewardpost_czw
作者: 忧雪の伤    时间: 2012-1-22 13:15
本帖最后由 忧雪の伤 于 2012-1-22 13:18 编辑


以下数据来自 codepad ( http://codepad.org )

Ruby code
  1. var = 0
  2. time = Time.now
  3. 1000.times { var = var + 1 }
  4. p Time.now - time
  5. time = Time.now
  6. 1000.times { var += 1 }
  7. p Time.now - time
复制代码

Output
  1. 0.000447
  2. 0.00037
复制代码


作者: 零の使魔    时间: 2012-1-22 14:15
前者需要先获得a这个变量的值,然后加3,再赋值给a,一共三步
后者是直接对变量啊进行操作,所以步骤少(后者反正都用习惯了)




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1