Помогите с ошибкой компиляции в шаблоне
От: niralex  
Дата: 16.03.19 12:46
Оценка:
Не компилируется такой код:
template<class T>
struct A{
    template<class U>
    void Test(){}
};
void f()
{
    A<float> a;
    a.Test<int>(); // ok
}
template<class T>
void g()
{
    A<T> a;
    a.Test();        // ok
    a.Test<int>();   // ошибка компиляции!
}

1) Не могу понять причину ошибки.
2) Как решить/обойти проблему?

Сообщение об ошибке:
file.cpp|16|error: expected primary-expression before 'int'
file.cpp|16|error: expected ';' before 'int'

Спасибо за помощь.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.