Добрый всем день!
Столкнулся с такой нехорошей вещью.
У меня есть класс:
template<class T>
class TypeClass
{
public:
};
template<>
class TypeClass<int>
{
public:
typedef Int Type;
};
И шаблонная функция
template<class T>
void my_fun(T& var)
{
typedef TypeClass<T>::Type Type;
Type* t = new Type;
}
VC говорит — все окей!
А вот g++ ругается на строчку
typedef TypeClass<T>::Type Type;
щас не могу привести пример что точно пишет. Чуть позже выложу. Но чтобы все работало приходится писать так:
typedef class TypeClass<T>::Type Type;
Ктото сталкивался с таким? Или подскажите где найти сайт разработчиков g++, чтобы им задать вопрос?