1

次の 2 行のコードがあります。

Microsoft.VisualBasic.Interaction.Beep()
or
Microsoft.VisualBasic.Beep()

この 2 行の結果は同じです。

Interaction クラスとは何ですか?また、いつ使用する必要がありますか?

前もって感謝します。

4

3 に答える 3

1

これは少し変わった名前であり、イミディエイトウィンドウで使用できるメソッド以外に推測することはできません。<StandardModule>重要なのは、クラスが属性で装飾されていることです。これは、クラスのメンバーをグローバル名前空間に移動するためのコンパイラーへのヒントです。したがって、クラス名を気にせずにMsgBox()を作成するだけで済みます。

VB6の場合と同じように。

于 2012-04-07T16:12:22.417 に答える
1

これらの 2 行により、まったく同じコードが生成されます。どちらを選ぶかはスタイルの問題です。個人的にはBeep()、名前空間修飾子がない場合にコマンドを単純に使用することを選択します

Sub Main()
  Beep()
End Sub

あなたが提示した2つの選択肢のうち、私はどちらかを選択Microsoft.VisualBasic.Interaction.Beep()Microsoft.VisualBasic.Beep()ます。前者はメソッドの完全修飾名であり、読者にとって完全に明確です。ただし、後者は VB.Net の名前解決のトリックを使用しており、経験豊富な VB.Net ユーザーでさえだまされる可能性があります。

于 2012-04-07T14:28:36.893 に答える
1

私が Visual Basic で最も気に入っている点の 1 つは、コードが簡単になり、通常は 、 、 などの一般的に使用される関数へのショートカットが含まれているMsgBoxことStopですBeep。これが、実際には同じであるため、両方の行で同じ結果が得られる理由です。

また、@JaredPar が言及しているように、完全修飾名を使用するか、これMicrosoft.VisualBasic.Interaction.Beep()だけBeep()でコードが読みやすくなります。

于 2012-04-07T14:38:01.040 に答える