2005-10-30-02-2005年の VBGeneric、そして怒り。 - project-enigma

2005-10-30-02-2005年の VBGeneric、そして怒り。

>> Site top >> weblog >> 月別アーカイブ >> 2005年10月のlog >> 2005-10-30-02-2005年の VBGeneric、そして怒り。

最終更新日付:2014/01/02 00:00:00


2005年の VBGeneric、そして怒り。

2005 年 10 月 30 日

一ヶ月ほど前に、VBGeneric という過去の作品について回顧録のようなエントリを書いた。そう、過去の作品。そう自分では思っていた。今後は手を入れるようなことも無いだろう。自分としても日常的な使用では満足しているし...と、本当に思っていた。

しかし、メールが来たのだ。今日、改善要望のメールが。まずはその内容について紹介しておこう。

STL の std::vector などでは、operator[] 演算子が提供されている。これによって、オブジェクトに対して、それがまるで配列であるかのようにインデックスを指定して要素を取り出せる。しかし、STL を模倣した VBGeneric は Visual Basic 上で動作するから演算子のオーバーロードはできようはずもない。そこで、VBGeneric の GVector などでは At プロパティを使用するようにしていた。こんな具合だ。

Dim gv As New GVector
 
Call gv.Resize( 3 )
 
gv.At( 0 ) = 10
gv.At( 1 ) = 9
gv.At( 2 ) = 8

しかし、演算子のオーバーロードはできなくても、部分的にそれを模倣することはできた。At プロパティをクラスの「既定のプロパティ」に設定してやれば、上記のコードは以下のように書ける。

Dim gv As New GVector
 
Call gv.Resize( 3 )
 
gv( 0 ) = 10
gv( 1 ) = 9
gv( 2 ) = 8

...というわけだ。この改善を施す対象は、コンテナクラスとしては GVector、GDeque、GMap の3つ。反復子としては RandomAccessIterator と GVector & GDeque の反復子。Visual Basic についてそれほど詳しくない陰郎は、「既定のプロパティ」によってこういうふうにできることを知らなかった。これは是非とも取り入れるべき機能である。実は修正はもう済んでいる。あとはマニュアルを書き換えるだけだ。それに時間が少しかかるのだが。

しかし、ここで陰郎は少々機嫌が悪いことを白状し、書きたくないことを書かなければならない。それは、この改善要望をくれた人のあまりの礼儀知らずに対してだ。その改善要望というのは陰郎のサイトのメールフォームから送られてきたものだが、まず第一に送信者のメールアドレスが無い。無くても送れるが、これでは返信ができないではないか。しかも、名前欄にはどう見ても恒久的に使用しているハンドルネームとは思われない名前を書いてきている。さらに、本文には VBGeneric という作品名すら書いておらず、本当に必要最低限のこと(**してほしいです、とか)しか書かれていない...要するに、ほとんど「便所の落書き」状態なのだ。

おい! REMOTE_HOST : ******-************-acca.tokyo.ocn.ne.jp から送ってきやがった hogeo さんとやらよ。見知らぬ人にモノを頼むときはな、最低限の礼儀ってモノをわきまえろよ。面と向かって人にモノを頼むときでも同じようにするのか? ネット上ではいつでもどこでも hogeo なのか? 人を馬鹿にしたような名前で送ってきやがって。ネットだって public space だろうがよ。反省して改めなさい!

まぁ、そんなワケだ。これで「個人的な要望」だったら完全無視するところだったが、内容自体は誰にとっても改善といえるもっともな修正なので、対応することにした...嗚呼、まだちょっと気分が悪い...

 

コメント

このページにコメントする

 

このページのタグ

Page tag : STLとその移植

 

 


Copyright(C) 2005-2017 project-enigma.
Generated by CL-PREFAB.