Compartilhar via


Erro do compilador C3412

'template': não é possível especializar o modelo no escopo atual

Um modelo não pode ser especializado no escopo da classe, somente no escopo global ou de namespace.

Exemplos

O exemplo a seguir gera o erro C3412.

// C3412.cpp
template <class T>
struct S {
   template <>
   struct S<int> {};   // C3412 in a class
};

O exemplo a seguir mostra uma possível resolução.

// C3412b.cpp
// compile with: /c
template <class T>
struct S {};

template <>
struct S<int> {};