[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[jfriends] Re: ポインタと参照
前橋です。
Javaの話からだんだんズレていきますが(_o_)
遠藤さん:
>>ダファイルのプロトタイプ宣言のみ、それが、void *だったら、私
>>はキレてしまいますです。
>さすがにこれは見た事無いです私の場合。
たとえば、すごく巨大なライブラリなのに、
・関数がひとつしかなくて、
・ひとつめの引数が「機能コード」(型はint)
・ふたつめの引数が、void*、または、全部一緒の詰め込み構造体
(当然、機能コードによって、どのメンバが有効かが決まる)
こんなのとか(^^;
いや、世の中には、こういうのを好きな人がいるんですよ...
ま、
本当は、「intの配列(要素数5)のポインタを引数として、intの配
列(要素数5)のポインタを返す関数のポインタ」を引数として渡し
たかったんだけど、宣言の仕方がわからずに、void*にしちゃった。
とかいう場合もありますが。これは同情の余地があるような(^^;
# typedefを使えば書けると思うんですけどね
私の場合、色々変なこともやるので、void*相当の型を使うことも
実はちょくちょくあるのですが、そういう場合も、可読性を損なわ
ないよう、typedefするようにしています。コンパイラがはねてく
れないので、効果のほどはさだかではないですが。
# 間違って別の所で別のtypedefで使っちゃったりすると、逆効果。
というわけで、Javaの話に持っていきますと、
「Javaに、genericと typedefと enumが欲しい!!」
ってのは駄目でしょうか?
以下は余談ですが、
>長くてわからないコードは捨てて書き直したり、
>全く同じ動作をするコードを自分で書いて使ったりしていました。
>要は大規模開発は経験していないのです。^^;
棄てて書き直したいのは山々なれど、どう動くのが正解なのかすら、
もはや誰にもわからない、というのが多いです(;_;)
------------------------------------------------------------
前橋 和弥 maebashi@xxxxxxxxxx
中部ソフトエンジニアリング(株)
〒450 名古屋市中村区名駅4-10-25(名駅IMAIビル 5F)
Tel:(052)583-4511(代) 内線 252 Fax:(052)583-4566
------------------------------------------------------------