gpt4 book ai didi

c# - 参数类型 null 不可分配给参数类型

转载 作者:太空宇宙 更新时间:2023-11-03 19:56:36 24 4
gpt4 key购买 nike

我正在尝试开发一个通用的 BoundedList 类,为此我创建了一个通用的 BoundedListNode 类。我的 BoundedList 类如下:

class BoundedList<TE>
{
private BoundedListNode<TE> _startNode;
private BoundedListNode<TE> _lastUsedNode;
protected Dictionary<TE, BoundedListNode<TE>> Pointer;

public BoundedList(int capacity)
{
Pointer = new Dictionary<TE, BoundedListNode<TE>>(capacity);
_startNode = new BoundedListNode<TE>(null);
_lastUsedNode = _startNode;
}
}

在 _startNode 的构造函数中,我收到错误“Argument type null is not assignable to parameter type TE”。

在这种情况下如何分配 null?

最佳答案

你需要告诉编译器TE是一个,意思是引用类型。对于无界类型,TE 也可以是值类型,它不能分配给 null:

public class BoundedListNode<TE> where TE : class

然后,您将能够将 null 指定为构造函数中的参数:

关于c# - 参数类型 null 不可分配给参数类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33064721/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com