魔境C++を旅する必須アイテム
C++をより深く理解する「定番の中の定番」と言えばこの本です。
内容の充実度からして上級者へのステップアップに是非オススメします。
C++の言語仕様は一見すると複雑怪奇で、学習者の心を容赦なく折ってきます。
本書はそんな迷える人に最適な一冊です。
ク○を生まない最適解
歴史を振り返ると、C++は機能拡張を繰り返し、言語仕様は膨大かつ複雑化しています。
その結果、使い方によっては容易に混乱とトラブルを引き起こします。
ちなみにLinuxで知られるリーナス・トーバルズは、C++嫌いで有名です。
以下は彼の発言です(翻訳適当)。
C++はひどい言語だ。
多くのダメなプログラマーがそれを使い、完全強烈なクソを生み出すのがメチャクチャ簡単な点で、尚更ひどいと言える。
氏はいつも毒舌なので平常運転と言えますが、C++がカオスと災いを招く点を指摘しています。
これは言い過ぎにせよ、実際C++には色々な落とし穴があるので気を付けねばなりません。
つまり我々もクソを生み出さない為に、C++の詳細を知る必要がある訳です。
そんな混沌としたC++世界を旅するガイドとして、本書は優秀な役割を果たします。
実際、多くのプログラマーに支持されている定番の一冊です。
読み方に気をつけて
とまあ良い本なのですが、読む際には注意点があります。
それは
凡人が一から全部読もうとすると、頭がパニックになる恐れがある
という事です(いや本当にマジで)。
ええ、私もなりましたとも…抽象度が高くなると冷や汗が出ました
ですから読む時は全てを理解しようとは思わず、分かりそうな部分から読みましょう。
それぞれの項の位置付けが明確なので、テーマ毎に読んでいく使い方が大変有効です。
また読む前に「これを学びたい」という目的を決めておくのも良いでしょう。
そうやって少しずつ読み進めて行けば、あなたの強力な武器になる名著です。
2024年の追記
本書も発行から年月が経ち、現在では「古い」記述を見かけるようになりました。
ですので、今なら同じ著者のEffective Modern C++を一緒に読むと、新しい言語仕様についての理解が深まると思います。