Мой вопрос снова касается шаблонов ... Из статической функции шаблона "functionA" в не шаблонном классе A
Ah
#ifndef A_H
#define A_H
#include "B.h"
class A
{
template <class T>
static T functionA();
};
template <class T>
T A::functionA()
{
T var;
T result = B::functionB(var); //Class B has not been declared
}
#endif
Я вызываю статическую функцию шаблона "function B"объявлено и определено внутри не шаблонного класса B. До объявления класса A класс B уже был включен ...
Bh
#ifndef B_H
#define B_H
class B
{
template <class T>
static T functionB(T var) ;
};
template<class T>
T B::functionB(T var)
{
...some code
}
#endif
Во время компиляции программы следующее сообщение об ошибкеapperared:
// Класс B не был объявлен
Это не настоящий код, только пример для иллюстрации.Эта ситуация возникла при вызове некоторых статических методов в моей программе.Можете ли вы помочь мне, пожалуйста?