После окончания первого цикла for
у вас есть вектор указателей на объекты Vertex.Но фактические объекты Vertex вышли из области действия , поскольку они локальны для первого цикла for
.Так что ваши указатели недействительны в этот момент , и вы получаете случайные результаты (в данном случае пустые строки).
Здесь я предполагаю, что Graph<T, U>::Vertice1
является std::vector<Vertex<T, U>*>
а не что-то с использованием умных указателей.
Самое простое решение - сделать так, чтобы вектор содержал объекты Vertex, а не указатели на объекты Vertex.