在C#中,“ where T:class是什么?”均值

问题描述 投票:1回答:3

在C#中,where T : class?是什么意思(请注意类约束末尾的问号)

例如

public IList<T> DoThis<T>() where T : class?
c# syntax
3个回答
4
投票

?附加到C#中的类型(受版本8支持)表示它是nullable reference typeclass?表示调用代码必须传入类型参数,该类型参数为class,并且可以为空。]

例如,DoThis<string?>(someNullableString)有效。也可以使用非空版本来调用它,例如DoThis<string>(someNonNullableString)


1
投票

这是C#8的有效语法。该语法将T约束为nullable reference type


0
投票

我还没有看到提到的东西。首先,这有点违反直觉,因为我们都知道引用类型can

© www.soinside.com 2019 - 2024. All rights reserved.