Мне нужно сделать график, и я хочу, чтобы ребра и вершины были типичными типами
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; }
}
Но для ребра требуется тип вершины, а для вершины требуется тип ребра Что мне делать?