2014年11月24日月曜日

C++のconst_castとvolatile

今更知った話シリーズ(?)。C++のconst_castはconstを無理矢理外すためだけに存在するものだと思っていたら、実はvolatileを外すのにも使うものだった。

組み込みであまりC++を使う機会がなかったから、知らなかったわ。直近の仕事でも直接組み込まれるコードにはCしか使っていないんだけど、そのテストでC++のフレームワークを使うようになって、const_castでvolatileを外すことを知った。テスト対象はCでもテスト自体はC++だからと、真面目にC++の流儀に則ってキャストしようとすると、結構面倒だなぁ。いや、キャストなんてしないで済むよう設計した方が良いのも、だからこそキャストを文法的にクドくしたのも分かるけど…。

0 件のコメント:

コメントを投稿