In file included from main.cpp:55:0:
visitor.h:16:37: error: template argument 2 is invalid
std::map<int, std::pair<int, int> ver;
^~~
visitor.h:16:37: error: template argument 4 is invalid
visitor.h: In instantiation of 'size_t BfsVisitor<Vertex>::DistanceTo(const Vertex&) const [with Vertex = int; size_t = long unsigned int]':
main.cpp:65:29: required from here
visitor.h:48:15: error: 'using element_type = class BfsVisitor<int>::Vert {aka class BfsVisitor<int>::Vert}' has no member named 'ver'; did you mean 'Vert'?
return vrt->ver[trg].second;
~~~~~^~~
Vert
visitor.h: In instantiation of 'Vertex BfsVisitor<Vertex>::Parent(const Vertex&) const [with Vertex = int]':
main.cpp:68:25: required from here
visitor.h:51:53: error: 'using element_type = class BfsVisitor<int>::Vert {aka class BfsVisitor<int>::Vert}' has no member named 'ver'; did you mean 'Vert'?
Vertex Parent(const Vertex &vr) const { return vrt->ver[vr].first; }
~~~~~^~~
Vert
visitor.h: In instantiation of 'void BfsVisitor<Vertex>::DiscoverVertex(const Vertex&) [with Vertex = int]':
main.cpp:13:3: required from 'void BreadthFirstSearch(const Graph&, const Vertex&, Visitor) [with Graph = UndirectedGraph<int>; Vertex = int; Visitor = BfsVisitor<int>]'
main.cpp:64:41: required from here
visitor.h:36:10: error: 'using element_type = class BfsVisitor<int>::Vert {aka class BfsVisitor<int>::Vert}' has no member named 'ver'; did you mean 'Vert'?
vrt->ver.insert(std::make_pair(0, std::make_pair(0, 0)));
~~~~~^~~
Vert
visitor.h:37:19: error: 'using element_type = class BfsVisitor<int>::Vert {aka class BfsVisitor<int>::Vert}' has no member named 'ver'; did you mean 'Vert'?
} else if (vrt->ver.find(vr) != vrt->ver.end()) {
~~~~~^~~
Vert
visitor.h:37:40: error: 'using element_type = class BfsVisitor<int>::Vert {aka class BfsVisitor<int>::Vert}' has no member named 'ver'; did you mean 'Vert'?
} else if (vrt->ver.find(vr) != vrt->ver.end()) {
~~~~~^~~
Vert
visitor.h:38:25: error: 'using element_type = class BfsVisitor<int>::Vert {aka class BfsVisitor<int>::Vert}' has no member named 'ver'; did you mean 'Vert'?
if (vrt->b < vrt->ver[vr].second) {
~~~~~^~~
Vert
visitor.h:39:14: error: 'using element_type = class BfsVisitor<int>::Vert {aka class BfsVisitor<int>::Vert}' has no member named 'ver'; did you mean 'Vert'?
vrt->ver[vr].first = vrt->a;
~~~~~^~~
Vert
visitor.h:40:14: error: 'using element_type = class BfsVisitor<int>::Vert {aka class BfsVisitor<int>::Vert}' has no member named 'ver'; did you mean 'Vert'?
vrt->ver[vr].second = vrt->b;
~~~~~^~~
Vert
visitor.h:43:14: error: 'using element_type = class BfsVisitor<int>::Vert {aka class BfsVisitor<int>::Vert}' has no member named 'ver'; did you mean 'Vert'?
vrt->ver.insert(std::make_pair(vr, std::make_pair(vrt->a, vrt->b)));
~~~~~^~~
Vert
visitor.h: In instantiation of 'void BfsVisitor<Vertex>::ExamineVertex(const Vertex&) [with Vertex = int]':
main.cpp:18:5: required from 'void BreadthFirstSearch(const Graph&, const Vertex&, Visitor) [with Graph = UndirectedGraph<int>; Vertex = int; Visitor = BfsVisitor<int>]'
main.cpp:64:41: required from here
visitor.h:31:17: error: 'using element_type = class BfsVisitor<int>::Vert {aka class BfsVisitor<int>::Vert}' has no member named 'ver'; did you mean 'Vert'?
vrt->b = vrt->ver[vr].second + 1;
~~~~~^~~
Vert
|