2009年12月27日日曜日

static_assert はコンパイル・タイムのお話

 ちょっと気になっただけなんだけど、コメントに書くと、どうしても S/N比が下がるので、エントリとしてあげてみる。
 static_assert が標準に組み込まれるらしいのだが、これは、コンパイル時にエラーとなるようにするための機能である。普通の機能は、実行時の動作を書くのだが、ここが大きく異なる。さて、コンパイル・タイムというのは、コンパイラに激しく依存する。SJISでソース・コードをコンパイルするかもしれないし、UTF-8でソース・コードをコンパイルするかもしれない。コンパイラがコンパイル時にサポートする言語は限られていそうであるからして、ここの文字に ASCII 以外を指定する事は、まず考えなくて良いのではなかろうか?
 まさか、自分が書いたソースのエラーを多国語対応するために、msgfmt を駆使するわけにもいくまい…などと、いう事を考えてしまいました。

0 件のコメント: