你会如何在VB.net中写这个?我没有得到索引++

时间:2012-01-11 10:23:15

标签: c# .net vb.net

我想这真是微不足道,但我不明白++的作用是什么。如何在VB.net中编写?

int index = 0;
foreach(String prop in props.Keys)
{
     pSpec.pathSet[index++] = prop;
}
pSpecs.Add(pSpec);

9 个答案:

答案 0 :(得分:8)

这只是一个后增量。这意味着它将返回它的值,然后将其值增加1。

pSpec.pathSet[index++] = prop;
VB.net中的

很可能只是:

pSpec.pathSet[index] = prop
index = index + 1 // this would work
index += 1 // this would work too

重要的是要注意,你不能以这种方式内联(因为你需要以前的值)。

答案 1 :(得分:2)

增量运算符(++)将其操作数增加1.增量运算符可以出现在其操作数之前或之后:

它与index = index +1;

相同

答案 2 :(得分:2)

Dim index As Integer = 0
For Each prop As [String] In props.Keys
    index = index +1
    pSpec.pathSet(index) = prop
Next
pSpecs.Add(pSpec)

答案 3 :(得分:0)

你必须以这种方式增加它

index =index + 1;

index +=1

如果有兴趣no increment operator

得到这个using this

Dim index As Integer = 0
For Each prop As [String] In props.Keys
    pSpec.pathSet(System.Math.Max(System.Threading.Interlocked.Increment(index),index - 1)) = prop
Next
pSpecs.Add(pSpec)

答案 4 :(得分:0)

index ++将索引增加1。

我不太了解VB,但你可以做到:

index = index + 1

答案 5 :(得分:0)

index++会返回index的当前值,之后会增加index的值。

在第一次迭代中,它将返回0作为值,然后将值增加到1。 在第二次迭代中,它将返回1作为值,在此之后,该值将增加到2。

VB中不存在'++'运算符,你必须自己增加它。

答案 6 :(得分:0)

这就是你要找的东西

Dim index As Integer = 0
For Each prop As [String] In props.Keys
    pSpec.pathSet(System.Math.Max(System.Threading.Interlocked.Increment(index),index - 1)) = prop
Next
pSpecs.Add(pSpec)

答案 7 :(得分:0)

index ++将index的值增加1.该语法在VB.NET中不可用(http://www.knowdotnet.com/articles/paulvick.html)

所以index ++相当于index = index + 1 你的vb代码应该是这样的:

{
 index = index+1
 pSpec.pathSet[index] = prop
}

答案 8 :(得分:0)

如上所述,这只是递增值。

++在VB.NET中不是一个有效的运算符,但最接近的可能是:

index += 1

对于任何来自VB6的人来说,这是一个很好的改变,因为在我们不得不总是使用缩写index = index + 1

之前