2015-09-18

Effective Modern C++の見本が届いた

Effective Modern C++の見本が届いた。

なぜ私のもとに見本が送られてきたかというと、知人の岡田真太郎君が査読をしたのだという。

中を見てみたが、C++11の新機能のさわりの解説と、いくつかの落とし穴の照会と、落とし穴を避けるためのいくつかのお作法が含まれているようだ。

最後の方の並列APIの章は、なんだかまとまりが無いように感じた。threadのことは一切解説しないのにthreadはjoin可能な状態で放置するな(デストラクターでstd::terminateが走るため)というお作法だけ書くのはよくわからない。また、atomic操作のさわりだけ教えても意味がないように思う。

weak_ptrも何故紹介したのかわからない。weak_ptrとatomic操作は、素人が付け焼き刃で使える機能ではない。

この本の浅い解説から考えると、大半の読者はweak_ptrやatomicを使う必要に迫られることはまずないし、使う資格もないだろうと思う。このように浅く存在だけ解説すると、必要もないのに使ってみたくなる人間が増えはすまいか。心配になる。

とはいえ、考えてみると、この本は初心者を対象にしたものではない。この本を読むには、すでにC++をある程度実用的に書ける必要がある。かつ、Effective C++やHerb SutterのExceptional C++などのC++本を読んでいて、C++03時代のC++は知っていることを前提にしている。

また、そもそも、今C++を書く人間は、到底素人ではないからこれでいいのだという意見も聞いた。

3 comments:

Anonymous said...

Effective C++はScott Meyers

江添亮 said...

Herb SutterはExceptional C++だった。

Anonymous said...

threadは並列でなく並行では?