gpt4 book ai didi

c# - 泛型参数推断

转载 作者:行者123 更新时间:2023-11-30 21:05:18 25 4
gpt4 key购买 nike

我在中间层有一个方便的集合,用于收集属于父事物的子事物。

public class ChildCollection<TParent, TChild>
{
public IEnumerable<TChild> GetChildren();
etc.
}

在界面中,我有一个方便的网格,可以显示 ChildCollection 的内容并让用户对其进行操作。

public abstract class ChildCollectionGrid<TCollection, TParent, TChild> : MyGridControl
where TCollection : ChildCollection<TParent, TChild>
{
public abstract TCollection Collection;
etc.
}

继承此类以制作网格以在 Widget 上与 Waffles 一起使用最终看起来像这样。

public class WidgetWafflesGrid : ChildCollectionGrid<WidgetWafflesCollection, Widget, Waffle>

这有点多余。 WidgetWaffleCollection ChildCollection 。指定了第一个泛型类型参数后,除非您准确指定另外两个参数,否则该类将无法编译。

有没有更漂亮的方法来实现这一点,编译器可以推断出其他两种类型?我知道我很挑剔,但理想情况下我希望类声明看起来像:

public class WidgetWafflesGrid : ChildCollectionGrid<WidgetWafflesCollection>

感谢您的帮助!

最佳答案

不,没有。通用参数推断仅适用于方法。

关于c# - 泛型参数推断,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11766215/

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