string array[]
long lBound, uBound
lBound = LowerBound(array[]) // = 1, empty array value
uBound = UpperBound(array[]) // = 0, empty array value
array[1] = 'Item 1'
array[2] = 'Item 2'
array[3] = 'Item 3'
lBound = LowerBound(array[]) // = 1
uBound = UpperBound(array[]) // = 3
array[3] = '' //removing item 3
lBound = LowerBound(array[]) // = 1, still
uBound = UpperBound(array[]) // = 3, still (but array[3] is nulled?
Myślę, że linia 'array [3]' jest niepoprawna, ale myślę, że przeczytałem, że powinno to usunąć komórkę tablicową.Mechanizm dynamicznej manipulatora agregatora
Jaki byłby właściwy sposób na usunięcie komórki tablicowej? Czy zależy to od typu obiektu? (String vs vs Number Object)
Albo
Czy można manipulować wartość górna granica, aby to działało?
tj. Po usunięciu pozycji 3, chcę, aby górna granica, lub długość pola, wynosiła 2, ponieważ jest to logicznie poprawne.
Nawiasem mówiąc, funkcja LowerBound zawsze zwróci wartość 1 z tablicą o zmiennych rozmiarach. LowerBound jest używany, gdy zadeklarujesz tablicę typu 'string foo [-7 TO 34]'. LowerBound zwraca -7 dla tej tablicy. –