[程式] Unity遇到List初始化器就闪退?

楼主: berice152233 (WASHI买的zenfone2)   2019-12-03 14:46:42
各位学长好
最近在写Unity的时候发现一个问题
只要我用List初始化器去设定类别的属性字段
并在建立物件时就会闪退
例如:
public List<Duck> ducks = new List<Duck>()
{
new Duck() { Kind = KindOfDuck.Decoy, Size = 17 },
};
Visual Studio里面也没出现错误
(把初始化器的内容删除就不会闪退)
但是如果是下面这种用法就又不会闪退
public List<string> Test = new List<string>()
{
"100",
"200",
};
如下例,单纯C#可以执行
但挂在Unity底下就会导致整个Unity闪退
https://dotnetfiddle.net/QbNFrt
请问这是Unity的限制还是个案呢?
不能用初始化器感觉好麻烦
作者: beiluoshimen (北落师门)   2019-12-03 19:11:00
use [SerilizeField]?
作者: wix3000 (痒,好吃)   2019-12-03 20:37:00
多一对括号应该编译不过吧
楼主: berice152233 (WASHI买的zenfone2)   2019-12-03 21:54:00
请问多一对括号是指?
作者: nimajneb34 (kanzaki.h.aria)   2019-12-03 22:27:00
有试过在Duck写Constructor然后在mew List<Duck>的时候使用吗
作者: kookll2 (tommy)   2019-12-03 23:06:00
这样好像是无限循环的问题你new一个类别然后自己的list又new了自己就变成无限循环了
作者: wix3000 (痒,好吃)   2019-12-04 01:07:00
你范例的第一行 new 后面就多一对括号啊 XD

Links booklink

Contact Us: admin [ a t ] ucptt.com