Sub V(N As Integer)
Console.WriteLine(N)
End Sub
Sub Main()
Dim N = 0
For I As Integer = 1 To 5
V(++N)
Next
End Sub
VB.Net沒有preincrement運算符,++ N不會在函數參數外工作。 這段代碼爲什麼編譯?vb.net preincrement operator in function arg
Sub V(N As Integer)
Console.WriteLine(N)
End Sub
Sub Main()
Dim N = 0
For I As Integer = 1 To 5
V(++N)
Next
End Sub
VB.Net沒有preincrement運算符,++ N不會在函數參數外工作。 這段代碼爲什麼編譯?vb.net preincrement operator in function arg
不同於C#,存在Vb.Net沒有遞增運算符,所述+
/-
符號被視爲正/負算術符號(或總和/休息如果blankspaces之間寫,或者如果分配符號之前寫像+=
/然而,您可以使用System.threading.Interlocked.Increment函數以類似的方式實現您想要的功能。
Imports System.Threading.Interlocked
Module Module1
Sub Main()
Dim value As Integer
For count As Integer = 1 To 5
Module1.Method(Increment(value))
Next count
End Sub
Sub Method(ByVal value As Integer)
Console.WriteLine(value)
End Sub
End Module
不同的是 - 經營者(「翻轉」一個數字的符號)一個+運營商似乎一種毫無意義的?我想爲什麼一個沒有真正做任何事情的經營者存在的問題被認爲是偏離主義的? – user6144226
提示,還編譯如果你寫的只是+ N或+++ñ – Steve