編譯器警告 (層級 1) C4812
過時的宣告樣式:請用 'new_syntax' 代替
在目前的 Visual C++ 版本中,仍然支援明確建構函式特製化,但未來的版本可能不予支援。
下列範例會產生 C4812:
// C4812.cpp
// compile with: /W1 /c
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() {}