重複の可能性:
C++ でコンパイル時に静的配列をプログラムで作成する
コンパイル時に次の配列を初期化することは可能ですか?
template<int n> void
foo()
{
static int pairs[2*n]; // = {0,0, 1,1, ..., n-1,n-1}
for (int i = 0; i < n; i++)
{
pairs[2*i] = pairs[2*i+1] = i;
}
do_something_with_pairs(pairs);
}
(私は Xcode 4.5 で Clang を使用しているので、C++11 は問題ありません)