Export (0) Print
Expand All
Expand Minimize

Compiler Warning (level 1) C4812

obsolete declaration style: constructor 'type' can not be explicitly specialized

In the current release of Visual C++, the explicit constructor specialization is still supported, but it may not be supported in a future release.

The following sample generates C4812:

// C4812.cpp
// compile with: /W1
template <class T> 
class MyClass;

template<class T>
class MyClass<T*>
{
   MyClass();
};

template<class T>
MyClass<T*>::MyClass<T*>()   // C4812
// try the following line instead
// MyClass<T*>::MyClass()
{
}

int main()
{
}
Show:
© 2014 Microsoft