2016-01-22 15 views
5

アンダースコアは、このためにいかなる反対の表記があり、私はこのアンダースコア(_)行の反対の部分はありますか?

Public Sub derp _ 
     (x As Integer) 
     MsgBox(x) 
    End Sub 

ようなことを行うことができますか?

Public Sub derp(x as Integer) : MsgBox(x) : End Sub 

しかし、これを乱用しないでください。それは¯した場合たとえば、私は

Public Sub derp(x as Integer) ¯ Msgbox(x) ¯ End Sub 
+5

おそらく、あなたにとって重要なのであれば、C#の使用を検討するべきでしょう。 –

+0

複数の行とEndIfを使用するのではなく、たとえば、If If myBool Then doStuffなど、特定の処理を行うことができます。 – GendoIkari

+2

実際には、最近アンダースコアを使用する必要がある場所はほとんどありません。あなたがそうしている場合、おそらくあなたのようなものではないはずです。 –

答えて

0

確かに、コロンを行うことができますコンパイラは回線で料金を請求しません。私は、継承関係を確立していたとき、私はそれを使用するだけの時間について

は次のとおりです。どういうわけか

Public Class Rectangle : Inherits Shape 
    ... 
End Class 

、ちょうどクラス本体にInheritsを置くよりも、私には、より論理的と思われること。 VBが私の最初の言語だったので、あなたは私のC++のルーツにそれを責めることさえできません。

+0

私は今この質問/回答のペアを三項演算として構築しようと精神的に努力しています。 – Draco18s

+4

私はコロンについて知っていますが、afaikは内側のビット(変数の割り当てや関数の呼び出しなど)でしか動作しませんが、外部ではありません。サンプル行は "メソッド本体の最初のステートメントはメソッド宣言と同じ行にありません。 " – user81993

+0

それは私もコロンを使用する唯一の場所です。ちょうどよく見えるようです。 –

1

コロンを使用できます。しかし、関数/サブ本体を関数/サブの宣言と同じ行に置くことはできません。

Public Sub derp(x As Integer) 
    MsgBox(x) : MsgBox("Hello, world") : End Sub 

アクションデリゲートを使用することもできます。しかし、1行に入れたい場合は1文しか持てません。

Public herp As Action(Of Integer) = Sub(x) MsgBox(x) 

あなたが複数の行を持つようにしたい場合は(あなたがしたい場合、あなたはコロンを使用することができます)、あなたはこのようにそれを書く:

Public herp As Action(Of Integer) = Sub(x) 
             MsgBox(x) 
             MsgBox("Hello, world") 
            End Sub 

使用のFuncデリゲートあなたは値を返す代わりにしたい場合アクションデリゲート。

関連する問題