1. そもそもベターCとは何か?

ベターCをテーマとして採り上げるからには、そもそもベターCとは何なのかを明らかにしておかなければなりません。「ベターC」というのは文字通り"より良いC"のことですが、正式な呼称でもなければ明確な定義があるわけでもありません。何をもって"より良い"とするのかも意見が分かれるところでしょう。

このように、「ベターC」というのは非常にあいまいな概念なのですが、それでも大きく分ければ次のどれかに当てはまるのではないかと思います。

  1. C++コンパイラを使ってCとまったく同じように書くことができるスタイル
  2. Cの知識しかないプログラマでも、わずかな説明さえあれば書くことができるスタイル
  3. C++からオブジェクト指向プログラミングやジェネリックプログラミングを除外したスタイル
  4. Cの言語機能のうち、問題を起こしそうな機能の利用を制限したスタイル
  5. C++の言語機能を活用したいが結果的にできていないことを自虐的に語るときの呼称

このうち5.については掘り下げる価値はないでしょうから扱わないことにします。また、4.については必ずしもC++を使うのではなく、単にCのコーディング規約のようなものかもしれません。MISRA-Cのルールもこれに該当します。これがベターCという名で呼ばれることはほぼないと思いますので、やはり扱わないことにします。

というわけで、残るは上記の1.〜3.の三つということになります。次回からは、これらについて一通り概観したあと、細部に踏み込んでいきたいと思います。

この記事のトラックバックURL:

http://www.kijineko.co.jp/trackback/850