次の関数を検討してください。
template<int N> f()
{
if(N==5)
{
std::cerr << "N=5 is not supported!\n";
abort();
}
do_real_work(N);
}
実行時エラー メッセージをコンパイル時エラーに変換するにはどうすればよいですか? C++11なら使えると思いますstatic_assert
が、C++03はどうでしょうか?
次の関数を検討してください。
template<int N> f()
{
if(N==5)
{
std::cerr << "N=5 is not supported!\n";
abort();
}
do_real_work(N);
}
実行時エラー メッセージをコンパイル時エラーに変換するにはどうすればよいですか? C++11なら使えると思いますstatic_assert
が、C++03はどうでしょうか?