池田 敏雄さんの言葉2009/03/14 07:28

以前、プロジェクトXで池田 敏雄さんのお話を知って以来の池田さんファンですが、池田さんの言葉でとても良い言葉をネットで知りました。ので、ご紹介します。

「IBMのアーキテクチャーが、OSが特に優れているわけでもない。 しかし、コンピュータが単なる計算機でなく、情報メディアになれば それぞれのマシンがバラバラで、バラバラにそれぞれのマシンのソフトを開発しなければならないのではユーザーは不便極まりないし、 コンピュータの発展も阻害される。

IBMは、いってみれば英語みたいなもので、それがいい悪いではなく、 世界の大半を占めてしまっているのだから、いわば共通の道具として使うのが、もちろん富士通のためでもあるが、何より世界のコンピュータの発展のためなんだよ」

素晴らしすぎます。この言葉を学生の頃に聞きたかった。雲は、何気に、Mac派だったこともあって、結構、Windows には拒絶反応があって、実は、MFCなんか大嫌いだったりするのです。 (だけど、.Net は大好き)

自分のことを振り返ると、最近、Windowsの技術 .Net に抵抗が無くなっきたのは、やっぱり、池田さんの言葉ほどきれいに説明はできないけど そういうことなのではないかと思ったりします。 (それにしては、Windows は、インフラ環境としてまだまだ未熟)

もし、このような考えをあと10年早く持っていたらと思うと、すごく、遠回りをした気になります。なんことを思ってます。

STL/CLR2009/03/18 21:18

C++好きとしては、STL を C++/CLI で実装された、STL/CLRには興味津々なのだけど、これまで、何故か、避けて通ってました。で、このままではいけないと思い、心を入れ替えて試してみました。しかし、何故か、VisualStudio2008でコンパイルができません。

ネットで調べてみたら、ちょっと、設定をしないといけないみたいでした。 面倒な。。。ということで、設定画面を忘れないようにメモっておきます。

ただ、STL/CLR って実際のところどういうところに存在意義があるのだろう。と雲は、若干、疑問です。簡単に扱ってみたところ、確かに C++/CLI のクラスのメンバーになるけれど、だから何?って感じてしまいます。

きっと、STL/CLR があるととても便利なことがあるとは思うのだけど、雲の乏しい知識ではそこまで到達することが難しいです。

STL/CLRの使い道についてのヒントなんかいただけると嬉しいな。と思ってます。

STL/CLR ツアーガイド

http://codezine.jp/article/detail/2664

C++/CLIのSTL/CLR オブジェクトにC#からアクセスする方法 http://codezine.jp/article/detail/2474

mutable2009/03/19 06:49

へなちょこ C++ 好きの雲は、基礎を確実にするなんてことを口実に入門書でのんびりモード。だけど、やっぱり、知らないことだらけでのんびりムードもあっという間にお勉強モードになってしまいます。この辺りがへっぽこ。な感じです。

さて、通常、クラスにconst 指定をした時には、メンバー変数を変更することはできないのだけど、そこは、実務に特化したC++。なんと、メンバー変数に mutable と書いておくと、クラスのconst指定を破ってくれます。

素晴らしい。と言いたいところだけど、残念ながら、雲にはその効果が見えません。Cで言うところの const キャストだとは思うのだけど、使い方ってどうするのが良いのかな~。

誰か良い例を知っていたら、是非、教えてください。

構造体の初期化2009/03/24 04:56

Windows の API をみていると、構造体のポインタを渡して(構造体を)初期化する関数が結構あります。雲は、いつも、面倒だな~。とか思って初期化するためのコードを書いていました。

ところが、ところが。Advanced Windows (下)p.92の中で素晴らしいコードを発見しました。

class SystemInfo : public SYSTEM_INFO{ public: SystemInfo(){ ::GetSystemInfo(this); } };

う~ん。素晴らしい。まさか、既知の構造体を継承するとは。。。言われてみれば当たり前だけど、これ。気がつけと言われてもなかなか難しい。こういうのこそ、コロンブスの卵っていうのでしょうね。