2016-01-22 56 views
5

下劃線允許我做這樣的事情是否存在與下劃線(_)連續相反的內容?

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

是否有任何相反的符號來表示呢?例如,如果是¯然後我可以做

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

也許你應該考慮使用C#,如果這對你很重要。 –

+0

對於某些事情你可以做到這一點.....例如,「如果myBool然後doStuff」,而不是使用多行和EndIf。 – GendoIkari

+2

其實現在很少有地方需要使用下劃線。在你這樣做的情況下,你可能不應該 - 例如 –

回答

0

當然,冒號:

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

但不要濫用這一點。編譯器不按線路收費。

關於我用它唯一的一次是當我建立一個繼承關係:

Public Class Rectangle : Inherits Shape 
    ... 
End Class 

不知爲什麼,只是似乎比把Inherits在類體內更合乎邏輯的我。而且你甚至不能將它歸咎於我的C++根源,因爲VB是我的第一語言。

+0

我現在正在精神上試圖將這個問題/答案對作爲一個三元操作。 – Draco18s

+4

我知道冒號,但它只適用於內部位(如分配變量或調用函數),但不在外部,您的示例行給我「方法體的第一條語句不能與方法聲明位於同一行。 「 – 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鍵代表行動委託。

相關問題