我有一個模板類,它看起來是這樣的:我可以統一初始化模板類的靜態常量成員嗎?
template <typename T>
class foo
{
static const T arr[16];
};
的foo<T>::arr
內容是對所有類型T
,我打算使用數字相同。例如,我將通過把線在源文件中,如下所示初始化它T = float
和T = double
:
float foo<float>::arr[16] = {1, 2, 3, 4, ...};
double foo<double>::arr[16] = {1, 2, 3, 4, ...};
有沒有辦法,我可以不必重複自己,並列舉所有的在一個地方初始化此辦法T
可以採取的類型?請注意,由於每個數組元素的類型爲T
,因此我無法使用從包含靜態數組的非模板基類派生foo<T>
的技巧。
您可以使用'define'。 –