在C#中循环泛型类型

安泽基

我需要制作图,并且希望将边和顶点设为通用类型

public interface IVertex<TVertex, TEdge>
        where TVertex : IVertex<?>
        where TEdge : IEdge<?>
{
    bool AddEdge(TEdge e);
    TEdge FindEdge(TVertex v);
}

public interface IEdge<TVertex> where TVertex : IVertex<?>
{
    TVertex From { get; }
}

但是,边缘需要顶点类型,而顶点需要边缘类型我该怎么办?

丹尼斯

我认为您正在使它变得更加复杂。
这样的事情会起作用吗?

public interface IVertex<T>
{
    bool AddEdge(IEdge<T> e);
    IEdge<T> FindEdge(IVertex<T> v);
}

public interface IEdge<T>
{
    IVertex<T> From { get; }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

C#中泛型类型的缺点

来自分类Dev

C#中的泛型类型

来自分类Dev

C#中的泛型类型转换

来自分类Dev

C#中的双重泛型类型

来自分类Dev

C# 循环遍历编译时已知的泛型类型

来自分类Dev

在C#中的函数中访问泛型类型的属性

来自分类Dev

C#中的条件泛型类型构造函数?

来自分类Dev

在C#中访问非泛型类型

来自分类Dev

C#中的泛型和继承类型

来自分类Dev

返回C#中作为集合的泛型类型

来自分类Dev

C#中的递归泛型类型参数

来自分类Dev

在c#中遍历泛型类型列表

来自分类Dev

比较C#中2个泛型类型的对象

来自分类Dev

在C#中强制转换为任何类型的泛型

来自分类Dev

C#泛型类型中的多态性

来自分类Dev

在 C# 中安全地转换泛型类型

来自分类Dev

C#泛型并使用类型化方法中的非泛型版本

来自分类Dev

在C#中检查T泛型类型具有属性S(泛型)

来自分类Dev

c#获取泛型类中泛型类型参数的名称

来自分类Dev

C# 泛型对象不能添加到该泛型类型的列表中

来自分类Dev

C#集合类型约束泛型

来自分类Dev

声明C#泛型类型方法

来自分类Dev

comman的C#泛型类型推断

来自分类Dev

可比类型的C#泛型

来自分类Dev

转换泛型类型C#

来自分类Dev

C#派生泛型类型参数

来自分类Dev

如何根据 C# 中的 T 类型将泛型类型返回为精确类型

来自分类Dev

泛型类型中的确切类型约束-C#

来自分类Dev

泛型类型中的确切类型约束-C#