VB, mehrdimensionales Array

Von: , Frage gestellt am Fr, 15. Sep 2000

Hallo!

Mir array() kann man ja ein eindimensonales Feld anlegen.
Kann ich damit auch mehrdimensionale Felder anlegen oder geht das nur mit Tricks (wie in C) ?

Danke,

Michael

4 Antworten zu dieser Frage

  1. Antwort von nach einer Stunde hilfreich
    Re: VB, mehrdimensionales Array

    MoiN!

    Mehrdimensionale Arrays werden genauso erstellt wie eindimensionale:

    dim array1(2,10) 'ok
    array1(1,1)=1 'ok
    array1(2,1)=2 'ok
    array1(3,1)=2 'falsch
    dim array2() 'ok
    redim array2(3,5) 'ok
    redim array2(5,5) 'falsch
    redim array2(3,15) 'ok nur die letzte dimension kann verändert werden
    redim preserve array2(3,15) 'ok, mit Beibehalten des alten Inhalts
    dim array3() 'ok
    redim array3(1,2,3,4,5) 'fünf dimensionen
    


    cu, holli

    • Antwort von nach 2 Stunden hilfreich
      Re^2: VB, mehrdimensionales Array

      Danke, und weißt Du auch, wie man solch ein Array komplett vorgesetzen kann?

      so etwas wie in einer Dimension:

      dim a(5)
      a = array (4, 8, 3, 78, 1)
      

      • Antwort von nach 3 Stunden hilfreich
        Re^3: VB, mehrdimensionales Array

        Die Array-Funktion kann leider nur bei eindimensionalen Arrays angewendet werden. Es geht sogar so weit, dass ein mehrdimensionales Array automatisch und kommentarlos in ein eindimensionales umgewandelt wird, wenn man mit der Array-Funktion darauf losgeht.
        Zuerst die Array-Funktion (auf ein eindimensionales) Array anwenden und dann mit redim preserve auf ein zweidimensionales ändern funktioniert auch nicht, weil man ja die 1. Dimension nicht verändern kann, wenn es deren mehrere gibt.

        Soweit meine heutigen Testergebnisse
        Amen
        ;-)
        Roland [Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

        • Antwort von nach 4 Stunden hilfreich
          Re^4: VB, mehrdimensionales Array

          Tja, dann muß ich mir halt ne andere Implementierung überlegen...

          Danke für die Hilfe! :-)

          Michael

Keine passende Antwort gefunden? Jetzt eigene Frage stellen!