找回密码
 点一下
查看: 1038|回复: 8

我有个疑问(chyj4747:全局变量是不是不能重复使用?)

[复制链接]
发表于 2014-9-3 17:36:13 | 显示全部楼层 |阅读模式
本帖最后由 chyj4747 于 2014-9-3 21:49 编辑

我有个疑问,是不是全局变量不能被重复使用,比如触发1里面使用了A变量,然后触发2里面也使用了A变量,就冲突了?
发表于 2014-9-3 21:07:10 | 显示全部楼层
最简单的方法试试就知道
回复

使用道具 举报

发表于 2014-9-3 21:55:07 | 显示全部楼层
本帖最后由 chyj4747 于 2014-9-3 21:59 编辑

LZ你这标题别人怎么看啊。。

全局变量在不同的触发里是可以重复使用的,冲突是在某些情况下会产生,比如触发1里设置了变量A,然后做其它动作,然后再使用A,如果其它动作里触发了(不一定是运行触发器那个动作)其它触发器,而其它触发器里改变了变量A,那么触发1里使用A的时候A的值就会不正确,这种才是变量冲突;还有种情况是设置变量和使用变量之间有明确的时间差,比如等待或者计时器,这时别的触发器在时间差内运行的话也有可能会造成变量冲突
魔兽除了AI都是单线程的,所以不用担心两个毫无关系且没时间差的触发器会穿插运行

如果LZ现在还没有能力判断冲突的情况的话,那就不同的触发里用不同的全局变量吧

点评

啊,明白了,那如果用局部变量的话是不是就完全不会发生冲突呢  详情 回复 发表于 2014-9-4 19:24
回复 1 0

使用道具 举报

发表于 2014-9-4 03:39:00 | 显示全部楼层
蛋糕是全局变量。

你吃一口蛋糕获得1块钱。
你弟弟也吃一口蛋糕也获得1块钱。

那么,你们两个同时都吃了,蛋糕自然就被咬了两口。
这就是冲突。

点评

哈哈这个解释简单  发表于 2014-9-4 19:25
回复

使用道具 举报

 楼主| 发表于 2014-9-4 19:24:46 | 显示全部楼层
chyj4747 发表于 2014-9-3 21:55
LZ你这标题别人怎么看啊。。

全局变量在不同的触发里是可以重复使用的,冲突是在某些情况下会产生,比如 ...

     啊,明白了,那如果用局部变量的话是不是就完全不会发生冲突呢

点评

应该是吧,对于局部变量和全局变量的定义我经常搞混淆  详情 回复 发表于 2014-9-4 19:38
回复

使用道具 举报

发表于 2014-9-4 19:38:09 | 显示全部楼层
li541146862 发表于 2014-9-4 19:24
啊,明白了,那如果用局部变量的话是不是就完全不会发生冲突呢

应该是吧,对于局部变量和全局变量的定义我经常搞混淆
回复

使用道具 举报

发表于 2014-9-5 09:24:31 | 显示全部楼层
自己回避冲突就行
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 点一下

本版积分规则

Archiver|移动端|小黑屋|地精研究院

GMT+8, 2024-9-27 07:09 , Processed in 0.864320 second(s), 25 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表