妻札幌から帰る・C++ の本

|

妻が札幌から帰ってきた。北大構内,大通り公園,すすきの,下宿のあった北19条近辺など,学生時代の懐かしい場所を散歩してきたらしい。羨ましい。北大クラーク会館のすぐ裏手の,私が住んでいた北6条西8丁目付近は JR の高架化で様変わりしていたという。お土産は懐かしい六花亭のマルセイバターサンド。

今日の晩ご飯は私がビーフシチューを拵えた。肉が足りないので近所のマルエツにお買い物。肉売り場では「好き好きお肉! 好き好き!」という歌が何度も何度も繰り返され,なかなかシチュー用のバラ肉を見つけられなかった私は,チョーイライラ(子供達によれば,この肉屋の歌は元モー娘。・石川梨華のものだそうである)。肉のついでに,安物 780 円のカリフォルニアワインもゲット。シチューは子供たちにも評判だった。

昼は,ロシア人からのメールへの返信文を書いた。北園克衛詩ロシア語訳の問題点をいくつか指摘して,LaTeX で作成した PDF を添付送信した。

* * *

Lemmatizer ライブラリを使った lemmatized コンコーダンスプログラムを設計中。私は O'Reilly から出た G. Satir, D. Brown による入門書で C++ をさらった程度で,この機会にもう少しきちんと勉強しなくちゃとさらに一冊 C++ 本を購入した。柏原正三『美しい C++ プログラミング見本帖』(翔泳社,2004年)。私は C++ のプログラムを何本も書いたけれど,「クラス・型の実装を強化した C」程度に C++ を扱っていた。オブジェクト指向云々も Java ほど気にする必要を感じなかった。それでも動く C++ プログラムが作れるわけである。

本書は C と C++ はまったく別のプログラミング言語であると強く主張する。 printf などの C の標準ライブラリ関数を使ってはいけない,プリプロセッサの #define による記号定数を使ってはいけない,などなど,私にとってびっくりするような指南がなされている。それが「美しい」ということか。でも,ちょっと納得のいかない点もある。

問題は,fprintf( ) 関数が C の入出力ストリームの関数であることです。C++ は C++ 独自の入出力システムとして入出力ストリームをサポートしていますが,それが C の入出力システムの関数と整合するという保証はありません。
柏原正三『美しい C++ プログラミング見本帖』翔泳社,2004年,p. 20.

「整合しない」例をどうして示してくれないの? このため,問題点の問題点たる所以がどこにあるのか,さっぱりわからないのである。C++ が C とは異なる言語だという考え方は正しい。でも,C++ の設計者は C++ を C のスーパーセットと位置付けているのではなかったか。やはり,ソフトウェアに関する日本人の著作は,米国人の足元にも及ばない,と思ってしまった。米国人なら「必ず」,きちんと具体例をあげ己れの命題の根拠を説明する。

まあ,それでも C に凝り固まった私にはこれくらい刺激的なことを言ってくれる本がよいのかも知れない。上記のような納得できない点もあるにせよ,C との違いを懇切に説明してくれる本である。

C++プログラミング入門
グレゴリー・サティア,ダウグ・ブラウン
オライリー・ジャパン

Moon Calendar

Profile

ISAO YASUDA。システムエンジニア。神奈川県在住。昭和 30 年代を懐かしむオヤジ。ロシアに興味があります。
[more], [About our site]

Notice

この文書はフィクションであり,実在する個人,団体等とは一切関係ありません。

R-18 指定サイトです。そのうち「18 歳以上ですか」の認証を入れる予定です。

文書の記述内容は無保証です。不適切な表現があればコメントにてご指摘ください。

コメント,トラックバックは,現在,運用を停止しています。ご意見等ありましたら isao@yasuda.homeip.net 宛電子メールにてお願いします。

Links

About this entry

Written by isao at 2009年7月13日 01:11.

Previous: 妻・札幌に出張,北園克衛詩に関するメール

Next: 世の中わかりません

Recent Entries in Main Index.
All Entries in Archive Index.

February 2012

Sun Mon Tue Wed Thu Fri Sat
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29      
Powered by Movable Type 4.1 blog counter