「C++再考」新装版

以下に紹介した「C++再考」は、現ピアソン・エデュケーションが社名変更する前に発行されたものですが、この度、ピアソン・エデュケーションから新装版として再発行されることになりました。
内容的に変更はありません。
<iostream>ではなく<iostream.h>など、古いライブラリを使った記述になっているのでご注意ください。もちろん、その内容は、決して「古く」はありません。個人的にはとても好きな本の1つです。

http://www.pearsoned.co.jp/washo/index.html

・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・

C++中級本、翻訳しました

C++の中級(以上)本を翻訳しました。訳した私が言うとなんですが、初級を終えて中級以上に進みたい人には、本当に良い本だと思っています。

それで、まあ、ちょっと、書かせて下さい。^^)

「C++再考」 A. Koenig、B. E. Moo著 小林健一郎訳
   アジソン・ウェスレイ・パブリッシャーズ・ジャパン/星雲社 3800円+税

予備知識:

 私のHPだけでは、残念ながら少し足りません。すくなくとも、他に、「参照」や「テンプレート」などの知識と「プログラミング上のちょっとつらい経験」が必要です。「参照」と「テンプレート」については後でHPを補足します。「つらい経験」はあんまり欲しくないですが、人間、多少痛い目を見ないとなかなかステップアップできないものです。、、、よね。

対象読者:

 1.とにかく中級以上を目指す人
 2.「ハンドル」、「コンテナ」、「反復子」、「STL」、「関数オブジェクト」などの意味を知りたい人
 3.C++で自信をもってプログラミングしたい人

3.について、一言。C++は「いろいろできる言語」である反面、初心者にはどうすれば「良い」のかがわかりにくいものです。表面的に「定石」を覚えても、意味がわからないと自信を持って実行できないでしょう。この本はそんな人にもお勧めということです。

守備範囲外:

 ウインドウズなどGUIプログラミングを直接扱うものではありません。(もちろん、GUIプログラミングにも応用できる基本テクニックを扱います。)

かなり高級なことを実に具体的かつ明快に説明してあります。(アメリカ人はこんな本を読んで勉強するのか、これじゃかなわんな、、、。というのが、原書をはじめてみたときの私の正直な感想です。)とはいえ、考えることなくすらすら読める本ではありません。
興味のある方は、一度見てください。

表紙は牛さんが寝そべっていて、(たぶん)女性が本を読んでいる、、、というものですが、大きな書店にしか置いてない(;;)ようなので目次も書いておきませう。

プレリュード/なぜ私はC++を使うのか/私はなぜC++を使うか/現実の世界を生きる/代理クラス/ハンドル:パート1/ハンドル:パート2/オブジェクト思考プログラム/クラスルームの練習問題:パート1/クラスルームの練習問題:パート2/仮想関数を使うべきでないとき/コンテナクラスのデザイン/コンテナの要素にアクセスする/反復子/シークエンス/インターフェースとしてのテンプレート/テンプレートとジェネリックアルゴリズム/ジェネリックな反復子/ジェネリックな反復子を使う/反復子アダプタ/関数オブジェクト/関数アダプタ/普段使うライブラリ/ライブラリ・インターフェース・デザインのオブジェクト型レッスン/ライブラリのデザインは言語のデザイン/言語のデザインはライブラリのデザイン/跡を残すクラス/オブジェクトのまとめ置き/アプリケータ、マニピュレータ、関数オブジェクト/アプリケーション・ライブラリを入出力ライブラリから切り離す/複雑から簡単へ/Hello Worldと言った後に何をするか

このHPでは、7月くらいから、私の「C++入門」とこの本の橋渡しにあたる話(初心者向きの訳注集?)をしようかと思っています。


Errata

読者の方からミスプリを指摘していただきました。ありがとうございます。
ご迷惑をおかけしたみなさまにお詫びいたします。

p87のBinaryクラスのコード
誤:class Biary_node
正:class Binary_node

誤:Unary_node(const String& a, 
正:Binary_node(const String& a, 
(Binary_nodeのコンストラクタですね。)

目次のページ