Archiv verlassen und diese Seite im Standarddesign anzeigen : [VB]: Erste Dimension eines zweidimensionalen Arrays zählen
Hallo,
Ich habe folgendes Array: test(x,y) und will nun wissen, wieviele x-Elemente es gibt. ubound(test) schlägt fehl, weil es viel zu viel zählt (schätzungsweise das Kreuzprodukt aus x und y). Wie sage ich ubound nun also, dass es nur die erste Ebene zählen soll?
Gruß,
mf_2
gr@fz@hL
2007-11-12, 10:02:18
In VBS ginge das mit ubound(test, 1).
Und ja, ich weiß VB != VBS, aber vielleicht klappts ja ;).
Tja, da hätte ich mal besser MSDN lesen sollen. Da steht genau drin, dass es einen optionalen Parameter gibt für dei Anzahl der Dimensionen, sorry.
Aber jetzt habe ich eine andere Frage:
Wie leere ich dieses mehrdimensionale Array? Gibt es dafür einen vordefinierten Befehl?
EDIT: Thx @ gr@fz@hl, es geht so auch in VB6.0.
Der_Donnervogel
2007-11-12, 10:15:06
Kommt drauf an, was unter "leeren" zu verstehen ist. Falls man alle Inhalte auf einen Schlag löschen will kann man das mit ReDim machen. Mit ReDim Preserve kann man auch Teile des Arrays erhalten; allerdings nur mit gewissen Einschränkungen. Am besten die Optionen des Befehls in MSDN nachschlagen.
Edit: Noch ne kleine Geschwindigkeitswarnung zu ReDim Preserve. Das Kommando legt immer ein neues Array an und kopiert die Einträge aus dem alten Array hinein. Bei großen Arrays und/oder häufiger Anwendung ist ReDim Preserve also mit Vorsicht zu genießen.
vBulletin®, Copyright ©2000-2025, Jelsoft Enterprises Ltd.