Почему метод сравнения не работает?

Я пытаюсь создать вершины, только если они еще не существуют, поэтому я в основном делаю:

p_graph — это указатель на класс Graph, где я пытаюсь сравнить vert1, который является строкой, со всеми другими строками в графе, и если он есть, я хочу перейти к приведенному выше утверждению else. В классе Graph у меня есть следующий код:

но когда я смотрю на код с помощью итератора отладчика, «it», похоже, не получает getName (), что является еще одной строкой в ​​классе Vertex, поэтому сравнение со строкой v можно сделать. Как мне решить эту проблему?

Вот вершинный конструктор:

-1

Решение

На самом деле это выглядит так, как будто вы не вставляете свою вершину в график после ее создания:

if (!(p_graph->vertexInGraph(vert1))) { // if vert1 is not already in graph
v1 = new Vertex(vert1, i);
i++; // increments vertex number
}

Этот кусок кода, вероятно, нужно что-то вроде

p_graph->insertVertex(v1);
4

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector