Array als return value von Funktionen



  • Hallo zusammen!

    In Perl bzw. Java bin ich es gewohnt als Funktionsrückgabewert u.a. ein Array zurückzubekommen.

    In C++ geht das ja nicht (?)

    Naja, jedenfalls hab' ich gelesen, daß man nur einen Pointer auf ein Array zurückgeben kann:

    int* CRomeView::test () {
        x[0] = 21;
        x[1] = 10;
        return x;
    }
    

    Mit x als globale Variable. Aber dann kann ich ja gleich nur die globale Variable verwenden und brauch keinen Pointer darauf.
    Gut, zumindest kann man das dann so schreiben:

    int* result = test();
    

    Aber irgendwie kommt mir das ziemlich seltsam vor.
    Stimmt das so ? Wird das so gemacht ? Oder gibt es eine andere (logischere) Vorgehensweise ?

    Vielen Dank im Voraus!

    Schöne Grüße,
    Hannes.



  • man übergibt der funktion ein array und dieses wird dann aufgefüllt

    int intarray[20];

    test(intarray);



  • Hi Barbara!

    Ahh! Jetzt hats bei mir geklingelt 😉
    Das ist in der Tat viel logischer.

    Vielen Dank!!!!

    Gute Nacht,
    Hannes.


Anmelden zum Antworten