3

如何将 +1 值添加到整数?

就像是

Do
    If myClientMachineIP.AddressFamily = Sockets.AddressFamily.InterNetwork Then
        Label2.Text = myClientMachineIP.ToString()
    Else
        TextBox2.Text = "IP is not equal to IPv4"
        proov = +1
        TextBox3.Text = proov
    End If
Loop Until proov = 10

如何将 +1 添加到proov整数变量?

4

3 回答 3

7

更正

VB.NET 没有增量运算符 ( ++),因此最简单的方法是使用加法赋值运算符+= 运算符

proov += 1

另一种方法是将值显式加 1:

proov = proov + 1
于 2013-09-02T09:34:12.777 回答
2

正如已经多次建议的那样,只需添加 1 通常就足够了:

proov += 1

但值得知道的是,一旦您开始编写多线程应用程序,这会给您带来麻烦,因为递增变量不是原子操作:

  1. 从中获取价值proov
  2. 将此值增加 1
  3. 将新值存储在proov

如果一个线程在线程完成所有 3 个步骤y之前跳入,线程和最终会做同样的事情。xxy

为防止这种情况发生,请将命名空间中的Interlocked类用于变量:System.ThreadingIncrement()

If myClientMachineIP.AddressFamily = Sockets.AddressFamily.InterNetwork Then
    Label2.Text = myClientMachineIP.ToString()
Else
    TextBox2.Text = "IP does not equal to IPv4"
    TextBox3.Text = Threading.Interlocked.Increment(proov)
End If
于 2013-09-02T11:36:00.023 回答
1

试试这个:

证明++

或者

TextBox2.Text = "IP does not equal to IPv4"
proov = proov + 1
TextBox3.Text = proov
于 2013-09-02T09:34:10.297 回答