私はかなり新人のC++プログラマーですが、この言語の経験が限られているため、ほとんどの標準C ++スタイルガイドライン(Google C ++スタイルガイドラインなど)は、stlおよびboostライブラリに実装されているものに反しています。
たとえば、C ++標準ライブラリとBoostのクラス名は常に小文字で、単語をアンダースコアで区切ります(たとえば、、std::vector
) 。一方、C ++で見たほとんどのスタイルガイドは、CamelCaseスタイル(たとえば、)の傾向があります。boost::unordered_map
std::map::const_iterator
TcpConnection
Int32
同じことがメソッドにも当てはまります。標準ライブラリとBoostは、クラス(例)の場合と同じスタイルをメソッドと関数に使用しますがstd::map<>::get_equal("foo")
、ほとんどのスタイルガイドはpascalCaseまたはCamelCaseを推奨しています。
これを、ほとんどのユーザーがコアライブラリで使用される規則に従うRubyのような言語と比較すると、標準C++ライブラリと他のすべてのコードとの間にそのような違いがあるのは奇妙に思えます。
なぜこれなのか誰か知っていますか?
編集:明確にするために、私は実際の実装スタイルではなく、表面的なテキストスタイル(ケーシング、アンダースコアの使用など)について単に話しているだけです。