Вы не реализовали Vertex::Vertex()
или Edge::Edge()
- они только объявлены.
Реализуйте их так:
class Vertex
{
private:
char vertex_name;
public:
Vertex() {}
...
class Edge
{
private:
Vertex source,destination;
int weight;
public:
Edge() {}
...
Вы также получите ошибки, если вы включите graph.h
из более чем одного файла cpp. Вы должны переместить тела ваших функций-членов в файл graph.cpp
вместо того, чтобы реализовывать их в заголовке, как вы делаете.