2012-05-18 163 views
1

有沒有辦法可以在vb.net做這樣改變變量值

dim idx = -1 
dim a = array(idx = idx + 1) 
dim b = array(idx = idx + 1) 
dim c = array(idx = idx + 1) 
dim d = array(idx = idx + 1) 

我想那是什麼IDX保持在每行後遞增,不增加它在一條獨立的線上。

謝謝

+0

您可以在使用前'++ idx' 1添加到它,例如'dim a = array(++ idx)' – Writwick

+0

請參閱本文[http://www.dotnetperls.com/preincrement] – Writwick

+3

我不認爲VB.net支持++ – bendataclear

回答

3

我不認爲VB.Net有這樣的事情,但你可以擴展至接近它:

Imports System.Runtime.CompilerServices 

Public Module Module1 

    <Extension()> _ 
    Public Function UpIndex(ByRef value As Integer) As Integer 
    value += 1 
    return value 
    End Function 

End Module 

注意在參數使用ByRef

然後你的電話是這樣的:

Dim a = array(idx.UpIndex) 
Dim b = array(idx.UpIndex) 
+0

很棒的主意。乾淨的代碼:)除了它應該是返回值(byref) – UnLoCo