Когда я компилирую следующую программу, используя c ++ 11, я получаю ошибку error: cannot add a default template argument to the definition of a member of a class template
. Почему компилятор не позволяет использовать аргумент шаблона по умолчанию в определении функции-члена?
#include <iostream>
template<typename A, typename T = int>
class my_class
{
private:
void dosomething();
};
template<typename A, typename T = int>
void my_class<A, T>::dosomething()
{
}
int main( )
{
B<int> obj;
return 0;
}