現在有個特殊需求,假設陣列(Arr)中保存三個元素。
在畫面A中,用到陣列.length的長度希望是1,在畫面B中,用到陣列.length的長度希望是3.
想法是,在畫面切換的click處理里,將資料length修改為1,但是陣列中內容還是三個元素。
切換到另一個畫面時,在把length 修改為3.
(現在代碼中很多用length做判斷的,如果每處都修改,太費事。)
uj5u.com熱心網友回復:
用一個function代替直接使用length;比如:
function GetLength(byref arr() as Variant) as integer
if ... then
GetLength = 1
else
GetLength = 3
end if
end function
使用的時候這樣:
... = GetLength(Arr) ' 用來替換 Arr.length;
uj5u.com熱心網友回復:
研究一下 ReDim Preserveuj5u.com熱心網友回復:
題主說的是VB.net吧。其實好幾種做法
1、用redim preserve (不知道vb.net里面是不是這個寫法)但長度1變3沒問題資料不會丟,3變1肯定要有資料損失啊
2、用兩個變數嘛
3、都是長度三,程式代碼自己去判斷場景根據場景去判斷取幾個數。舉個例子,定義一個變數,myArrLength ,變化場景的時候你打算變換陣列長度的地方改成 myArrLength = 1 或 myArrLength =3 。然后全代碼替換 Arr.length 為 myArrLength
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/30205.html
標籤:VB基礎類
上一篇:VB程式合并
下一篇:請幫忙標注代碼的注釋
