31.08.2011, 02:13. Просмотров 6095. Ответов 17
Привет всем!
У меня есть шаблонный класс, и наследуемый от него шаблонный класс.
Базовый:
C++ |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
| #include "Lgraph.h"
#include "Mgraph.h"
template <class Edge>
class vgraph {
friend class lgraph<Edge>;
friend class mgraph<Edge>;
protected:
public:
virtual ~vgraph() = 0;
virtual Edge* g_insert_edge(Edge *edge) = 0;
}; |
|
Наследник:
C++ |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| #include <vector>
#include <list>
using namespace std;
template <class Edge>
class lgraph : public vgraph<Edge> {
protected:
vector< list<Edge*> > vectorl;
public:
lgraph();
Edge* g_insert_edge(Edge *edge);
};
template <class Edge>
lgraph<Edge>::lgraph() {
} |
|
При попытк выполнить код
C++ |
1
2
3
| vgraph<Edge> *graph;
lgraph<Edge> l;
graph = &l; |
|
возникает ошибка:
error C2143: синтаксическая ошибка: отсутствие "," перед "<"
в строке
C++ |
1
| class lgraph : public vgraph<Edge> { |
|
Подскажите, пожалуйста, что не так)