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不能在函数参数之外工作。 为什么这段代码会编译?
答案 0 :(得分:1)
与C#不同,Vb.Net中没有增量运算符,+
/ -
符号被视为正/负算术符号(如果在空白空间之间写入,则为sum / rest,或者如果写入但是,在+=
/ -=
之类的分配符号之前,您可以使用 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