【发布时间】:2013-12-16 07:05:40
【问题描述】:
我正在尝试根据布尔值决定调用哪个函数。
myBooleanVariable ? function1() : function2();
Unity 报错:
语句中的表达式只能针对它们的 副作用。
那么为什么这不起作用,我怎样才能使它起作用?
感谢您的帮助!
【问题讨论】:
-
某事告诉我你在错误信息中留下了一个重要的字眼("...must not be...") .
-
它对我有用,你能提供更多细节吗?
-
你的函数有返回任何东西吗?
-
@Asterisk:你在使用 UnityScript 吗? (Unity对JavaScript的实现)
-
@CengizFrostclaw:side-effect 是一个不是其返回值的函数的结果。您正在使用条件运算符来调用两个函数之一,并且它在抱怨(我 认为),因为尽管您正在使用运算符(在表达式中),但您并没有对返回值,因此仅使用它来获得副作用。 表达式 是可以用作右侧值的东西(赋值的右侧,传递给函数等); statement 很难简洁地定义。 :-)
标签: unity3d ternary-operator unityscript side-effects