2010-01-25

C++0x本:目次案について考える

やはり、規格に沿った目次でもいいのではないか。もちろん、規格通りでは分かりにくいので、順番を変えるのは当然だ。また、ユーザーとして、あまり知っていても役に立たない部分は、割愛してもいいだろう。

つまりこれは、機能を総合的に解説することをあきらめるということになる。たとえば、「ポインタ」ならば、宣言と定義、初期化、ポインタに対する演算は、別々の場所で説明することになる。果たして、そんな本が受け入れられるだろうか。

しかし、この本は、初心者向けの入門書ではない。私の想定では、本書の読者は、すでに、変数や関数の書き方、ポインタの使い方、クラスの書き方、などを、少なくとも、表面的に知っている。とすれば、いまさら総合的な解説などいるだろうか。ポインタについて総合的に解説する章は、必要だろうか。それよりは、たとえば読者が加算式について知りたくなった場合、目次から飛べば、基本型(Fundamental Type)に対する加算も、ポインタに対する加算も、両方調べることができる。そんな本のほうが喜ばれるのではないだろうか。

表面的なC++の書き方を説明する入門書ならば、すでにいくらでもあるし、また、C++0x版の入門書も、いずれ出版されるだろう。私の本はむしろ、リファレンス的な役割を果たしたい。

総合的な解説をやめるというのは、本を最初のページから順番に呼んで行くことができなくなるということを意味する。難しいものだ。

C++0xのすべてを解説する必要があるとは思っていない。たとえば、No Diagnostic Requiredのごときは、省いても誰も文句を言わないだろう。他にも、registorやasmやexportの類は、そういう予約語があるということだけ説明しておけばいいし、TrigraphやAlternative tokenも、説明しなくてもいいだろう。

No comments: