Default template parameters arguments in VC++

default-value, templates, visual-c++

Solution

I think you still have to specify an empty template list, or use a typedef:

template <typename T=int>
class X
{
};

X<> x;

typedef X<> XX;
XX x;

Problem

Does VC++ not support default template parameters arguments? This simple code: ``` template <typename T=int> class X { }; X x; ``` gives me an '`error C2955: 'X' : use of class template requires template argument list`'. No complaints about the template declaration, however. What am I missing here? Some compiler switch maybe?

Original source