所以這是我第一次使用 c#,我復制了代碼以從中學習,但是當我復制它時,我遇到了一個錯誤“不可為空的欄位必須包含非空值......”我們實際上有相同的代碼。
using System;
using UnityEngine;
namespace Trainer7dtd
{
public class Loader
{
public static void Init()
{
Loader.Load = new GameObject();
UnityEngine.Object.DontDestroyOnLoad(Loader.Load);
}
private static GameObject Load;
}
}
私有靜態游戲物件加載;負載是我得到錯誤的地方
uj5u.com熱心網友回復:
我相信您復制的代碼來自以前版本的 .Net Core 5 或之前的版本,它使物件參考GameObject Load
被允許為 Null 并默認設定為 Null。
但是對于 .Net 6,情況不再如此,您需要通過?
在物件參考宣告之后添加來明確提及物件參考為 Nullable。
using System;
using UnityEngine;
namespace Trainer7dtd
{
public class Loader
{
public static void Init()
{
Loader.Load = new GameObject();
UnityEngine.Object.DontDestroyOnLoad(Loader.Load);
}
private static GameObject? Load;
}
}
我希望這能解決問題。干杯
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/515715.html
標籤:C#unity3d
上一篇:訪問A類中的串列