• ベストアンサー

$や&について

VB6.0で、$や&は何を意味していますか? また、なぜこんな記号を付ける必要があるのでしょうか? 例 Left関数の場合 → Left$   UCase関数の場合 → UCase$

質問者が選んだベストアンサー

  • ベストアンサー
  • sakusaker7
  • ベストアンサー率62% (800/1280)
回答No.2

BASICにおいて、変数の末尾についている $ ! & % といった記号はその変数の 型を明示するのに使われます。 関数についても同じで、Len$ であればその戻り値が文字列であることを明示しています。 Visual Basic の場合だとどんな型でも受け付けるヴァリアントという型があるのですが、 これを多用することは速度的に影響を及ぼしたりするので型を明示することがよくあります。 VB6の場合だと $ → 文字列型 ! → 単精度浮動小数点数 & → 倍精度浮動小数点数 % → 整数 @ → Currency 型 (.NETで変更された) です。 ほかのBasicでの解説ページはあったんですが、VBで説明しているのは 見つかりませんでした。

参考URL:
http://www.atmarkit.co.jp/fdotnet/vb6tonet2/vbnet2_01/vbnet2_01_01.html
lokki3
質問者

お礼

Variant型の存在がある為に、 明示的に、記述しているということですね。 また、BASICの名残りでもあったんですね。 ありがとうございます。

その他の回答 (1)

回答No.1

確か関数であるということじゃないかな? それないと、ただの英文として読み込まれちゃうんじゃない? 確定的でなくて済みません。

lokki3
質問者

補足

ただの英文として読み込まれるとは、どういうことでしょうか? 私は、例えばLeft関数の場合、以下の例では(1)と(2)は、 まったく同じ処理を行います。 MSDNのLeft関数を調べても、$についての解説がありません。 しかし、多くの開発現場では、色々な関数に$や&がついてます。 なぜなんでしょうか? VBの初心者なんですが、すごく疑問に思います。 (1)------------------------------------- Dim strMoji as String strMoji = Left("ABCDEFG", 3) (2)------------------------------------- Dim strMoji as String strMoji = Left$("ABCDEFG", 3) ---------------------------------------

関連するQ&A