6
我似乎無法在完全專門化的類模板中初始化一個靜態成員!在完全專門化的類模板中初始化一個靜態成員
我試圖做到以下幾點:
template<typename Type>
class X
{
};
template<>
class X<int>
{
public:
static int Value;
}
,但我似乎無法初始化靜態成員,我什麼都試過,如:
template<>
int X<int>::Value = 0;
它不能編譯,所以任何關於如何實際執行此操作的指針都會很好;)
編輯:下面的答案是正確的,但您還需要將init放在.cpp文件中,而不是放在標頭f ILE。
感謝您的時間, 理查德。
「模板<>中明確專業類的成員定義是不允許的」 - 很高興知道,謝謝! – Xeo 2011-03-13 13:10:07
謝謝,通過刪除模板<>並將init放入.cpp文件(我通過你的例子)。我現在可以編譯它。謝謝! – Richard 2011-03-13 14:00:12