我正在尝试创建一个Dictionary类型的NativeArray,但出现此错误:
通用类型或方法“ Unity.Collections.NativeArray”中的类型
Realtime.Messaging.Internal.ConcurrentDictionary<string,Chunk>' must be a non-nullable value type in order to use it as type parameter
T'
NativeArray<ConcurrentDictionary<string, Chunk>> dictionary = new NativeArray<ConcurrentDictionary<string, Chunk>>(8, Allocator.TempJob);
我是Unity和C#的新手,以前可能曾问过这个问题,但我一直在寻找修复程序,找不到任何东西。
我该如何解决?
答案 0 :(得分:2)
答案是在您收到的错误消息中: ..必须是非空值类型... ConcurrentDictionary是引用类型,似乎NativeArray具有要接受的类型参数约束仅结构,约束类型如下:
class Foo<T> where T:struct{}
这意味着您只能创建值类型(结构)的NativeArray:int,byte,char,... etc或您自己的结构...