首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >类型必须是非空值。

类型必须是非空值。
EN

Stack Overflow用户
提问于 2018-07-18 19:28:49
回答 1查看 5.4K关注 0票数 1

我正在尝试创建一个字典类型的NativeArray,并得到了以下错误:

泛型类型或方法Realtime.Messaging.Internal.ConcurrentDictionary<string,Chunk>' must be a non-nullable value type in order to use it as type parameter‘中的Realtime.Messaging.Internal.ConcurrentDictionary<string,Chunk>' must be a non-nullable value type in order to use it as type parameterT’类型

代码语言:javascript
复制
NativeArray<ConcurrentDictionary<string, Chunk>> dictionary = new NativeArray<ConcurrentDictionary<string, Chunk>>(8, Allocator.TempJob);

我是团结和C#的新手,这个问题可能是以前问过的,但我一直在寻找修复方法,却什么也找不到。

我怎么才能解决这个问题?

EN

回答 1

Stack Overflow用户

发布于 2018-07-18 19:43:45

答案是在您收到的错误消息中:.必须是非空值类型.ConcurrentDictionary是一个引用类型,NativeArray似乎有一个类型参数约束,只能接受结构,这种约束类型如下:

代码语言:javascript
复制
class Foo<T> where T:struct{}

这意味着您只能创建值类型(结构):int、NativeArray、char、...etc或您自己的结构.

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51409682

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档