gpt4 book ai didi

c# - 泛型可以嵌套在类定义中吗

转载 作者:行者123 更新时间:2023-11-30 15:49:04 24 4
gpt4 key购买 nike

我正在做这样的事情:

public abstract class FolderNode<TChildNode,TChildBusObj> : Node
where TChildNode : MappedNode<TChildBusObj>, new()
where TChildBusObj : new()
{
..
}

有没有办法从定义中省略 TChildBusObj,但仍然可以在代码中访问它?例如。我希望能够推断泛型类型的泛型类型。我试过这个:

public abstract class FolderNode<TChildNode> : Node
where TChildNode : MappedNode<TChildBusObj>, new()
{
..
}

但是我得到这个编译错误:

CS0246:找不到类型或命名空间名称“TChildBusObj”(是否缺少 using 指令或程序集引用?)

2001 年 22 月更新

我实际上已经确定我想要这个:

public class Folder<TChildNode, TBusObj> : MappedNode<TBusObj[]>
where TChildNode : MappedNode<TBusObj>, new()

最好缩短为:

public class Folder<MappedNode<TBusObj>, TBusObj> : MappedNode<TBusObj[]>

但我不能,因为我得到这个错误:

CS0081:类型参数声明必须是标识符而不是类型

我猜你不能匿名化类定义中的嵌套泛型

最佳答案

如果您不定义它指的是什么,TChildBusObj 指的是什么?

关于c# - 泛型可以嵌套在类定义中吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2109175/

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