能否判斷動態陣列有沒有被分配過?

2021-08-29 03:06:54 字數 699 閱讀 5989

動態陣列在vb語言中常能起到出奇制勝的作用。但陣列有沒有被重新定義或釋放,用「is empty」,「is null」,「=" "」等方法都不起作用。所以判斷時一般採用偵別錯誤訊息(on error )的方法。下面給出乙個非錯誤偵別的**,判斷動態字串陣列的分配情況:

private sub command1_click()

dim a() as string, i as long

msgbox hasredim(a), 64, "has a() been redimed?"   '未初始化

redim a(20)

for i = 1 to 20

a(i) = chr(i+64)

next

msgbox hasredim(a), 64, "has a() been redimed?"     '初始化後

erase a    '釋放空間後

msgbox hasredim(a), 64, "has a() been redimed?"   

end sub

function hasredim(byref x() as string) as boolean  '定義布林函式

dim temp as string

temp = join(x, ",")

hasredim = lenb(temp) > 0 '空陣列長度為零

end function

判斷周圍有沒有敵人

1 只攻擊正前方的單位,向前發射一條射線,攻擊碰到的單位 raycasthit hit range 射線的長度,即攻擊範圍,masktarget敵方單位的mask,只攻擊敵方單位 if physics.raycast unit.thist.position,unit.thist.forward,ou...

判斷能否被3,5,7整除

給你乙個整數,請判斷它能否被 3,5,7 整除,並輸出以下資訊 能同時被 3,5,7 整除 直接輸出3 5 7,每個數中間乙個空格 只能被其中兩個數整除 輸出兩個數,小的在前,大的在後。例如 3 5或者3 7或者5 7,中間用空格分隔 只能被其中乙個數整除 輸出這個除數 不能被任何數整除,輸出小寫字...

判斷能否被3,5,7整除

描述 給定乙個整數,判斷它能否被3,5,7整除,並輸出以下資訊 1 能同時被3,5,7整除 直接輸出3 5 7,每個數中間乙個空格 2 只能被其中兩個數整除 輸出兩個數,小的在前,大的在後。例如 3 5或者 3 7或者5 7,中間用空格分隔 3 只能被其中乙個數整除 輸出這個除數 4 不能被任何數整...