[程式] 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