2017-07-18 84 views
0

我想做一個腳本,從2維數組返回一個單數列,這將用作數據在Rhino中繪製各種事物。但是,我試圖這樣做時總會遇到錯誤,而且我似乎無法弄清楚我的代碼出了什麼問題。我現在的功能轉載如下:從2D數組返回單數列?

Function ReturnColumn(ByVal col, ByVal array) 

Dim colsize, i 
colsize = UBound(array, 1) 

ReDim vector(colsize) 

For i = 0 To colsize 
    vector(i) = array(i, col) 
Next 

ReturnColumn = vector 
End Function 

這應該是一個非常簡單的功能,但由於某種原因,我不能得到它的工作。任何幫助表示讚賞,謝謝!

回答

0

我相信你需要在重新定義它之前用Dim聲明你的數組變量。此外,作爲變量名的array可能會導致問題,因爲它是保留關鍵字。使用例如matrix

Function ReturnColumn(ByVal col, ByVal matrix) 
    ' Declare variables 
    Dim colsize As Integer 
    Dim i As Integer 
    Dim vector() As Integer 

    ' Redimension the array to the size of the column 
    colsize = UBound(matrix, 1) 
    ReDim vector(colsize) 

    ' Fill the array 
    For i = 0 To colsize 
    vector(i) = matrix(i, col) 
    Next 

    ' Return the array 
    ReturnColumn = vector 
End Function 

documentation說(重點煤礦):

ReDim語句用來大小還是調整動態數組已經正式使用聲明一個PrivatePublic,或Dim帶空括號的語句(不帶維度下標)。