У меня есть два заголовочных файла Ah (включая чисто виртуальную функцию) и Bh
Ah:
#ifndef __A_H__
#define __A_H__
#include "B.h"
template <class T>
class A
{
virtual B<T> f()=0;
};
#endif
Bh:
#ifndef __B_H__
#define __B_H__
#include "A.h"
template <class T>
class B : public A <T>
{
B<T> f(){}
};
#endif
, но когда я компилируюэто дает мне такую ошибку В файле из Bh: 4,из Test.cpp: 1:Ах: 10: ошибка: ISO C ++ запрещает объявление 'B' без типаАх: 10: ошибка: «B» объявлен как «виртуальное» полеАх: 10: ошибка: ожидается ';'до '<' токена </strong>
#include "B.h"
int main() {
return 0;
}
как я могу решить это?спасибо