Erro do Compilador C3747
parâmetro de tipo padrão ausente: parâmetro param
Parâmetros genéricos ou de modelo com valores padrão não podem ser seguidos na lista de parâmetros por parâmetros que não têm valores padrão.
A seguinte amostra gera C3747:
// C3747.cpp
template <class T1 = int, class T2> // C3747
struct MyStruct {};
Resolução possível:
// C3747b.cpp
// compile with: /c
template <class T1, class T2 = int>
struct MyStruct {};