コンパイルが止まらない
なんか珍しいものを見た.TopCoderではコンパイルに30秒以上かかっちゃダメらしい.
コンパイルができないと何の情報も無いまま目だけでデバッグしなくちゃならないので精神的にとても辛い.
どうやら原因はでかいメンバ変数のようです.
#include<vector> class C { std::vector<int> a[10000000]; };
上のコードをコンパイルするとずんずんメモリを喰っていきます.
実行時でなくコンパイル時に負荷がかかるというのは,おそらくクラスのサイズ決定時にテンプレートが絡んでほげほげだろうとは思うのですが詳しくは謎.
ともかく,こういうでかい変数は原則としてグローバルか static に取りましょうってことですね.もう嫌だこの言語.