16/12/25 17:25:21.30 +uAMo6Z3.net
c++11 の std::accumulate() を使って CRC32 を計算するプログラムを書いているんだけど、
イテレータの型が不明だから template<> を使わざるおえずヘッダーにしか書けないんだよな。
それは仕方がないとして、参照しているテーブルをヘッダーファイルに
static const uint32_t __CRC32_TABLE__[256] {/* データは省略 */};
って書いてもコンパイル単位で毎回生成されるようなことにはならないのか心配。
自分で調べてみようと思って objdump を使って見てみたんだけどよくわからんかった。
extern で宣言して別ファイルでテーブルの実態を定義してもいいけど、
シンボルを公開したくないんだよね。