例如
template<size_t N>
class A
{
array<int, N> m;
static A const UNIT {1, 1, ...}; // repeated N times,
// but I can't because of currently unspecified N
}
如何使用自定义值1
初始化模板大小的数组?
答案 0 :(得分:2)
您可以使用填充功能。 这也适用于静态const成员。
template<size_t N>
class A {
array<int, N> m;
public:
static A const unit;
A() { m.fill(1); }
};
template<size_t N>
A<N> const A<N>::unit{};