16番会議室「玉石混淆みんなで作るSample蔵」に寄せられたサンプル
"RE^6:イベントに型無し引数を使うには"
この発言は #00775 りゅー さんのRE^5:イベントに型無し引数を使うには に対するコメントです
りゅー さん、こんにちは。
> 普段Variantなんて使わないもので...(^^;
普通の変数にVariantを使う理由はないですからね.
> Pascalの型チェックの厳格性を損なうのは、好きじゃないです。Cが嫌いに
そもそも「いろんな物をひとつの変数でやりとり」と言うのが厳密な型
チェックと相容れないわけですが,出来ないと困ることもままあると言うこと
で許していただくと...
一般にVariantを避ける理由は,効率の悪さとか,何でも出し入れできて,
間違いに気付きにくいところだと思いますが,本件のようにいろんな物をやり
とりする場面ではもっとも安全な形式のひとつかもしれないと思いました.
Variantと外部とのやりとりでは,変換可能な値の時だけ変換されます.例え
ばIntegerで表せない浮動小数点数を代入してIntegerで取り出すと例外が出
てくれます.入れた型と取り出す型が違っても中に記憶された情報を基に正し
く変換してくれるので,共用体やポインタ,Pascal生え抜きの型無しパラメータ
のいずれよりも安全だと考えることができますしね.
VariantはVBの申し子であるということは否定できないのだけれども,string
以上に賢い,隠れた
「オブジェクト」
だというのは確かだと思うんですよね.
# 最近は「Pascalの柔軟さ」に頼ったコードを書いてばかり..(^^;
TN(CQJ01721)
Original document by TN 氏 ID:(CQJ01721)
ここにあるドキュメントは NIFTY SERVEの Delphi Users' Forum の16番会議室「玉石混淆みんなで作るSample蔵」に投稿されたサンプルです。これらのサンプルはボーランド株式会社がサポートする公式のものではありません。また、必ずしも動作が検証されているものではありません。これらのサンプルを使用したことに起因するいかなる損害も投稿者、およびフォーラムスタッフはその責めを負いません。使用者のリスクの範疇でご使用下さい。
Copyright 1996-2002 Delphi Users' Forum
|