Arraygröße mit der größe eines vectors intialisieren



  • hallo,
    ich möchte ein zweidimensionales array intialisieren.
    dabei soll die erste dimension die mit einer größe eines vectors .
    einfach mal angenommen in den vector wurden 700 zeilen geladen und heißt "vec".
    mein ansatz ist:

    double speicher [size(vec)][2];

    -> geht nicht, compiler meckert

    double speicher [sizeof(vec)/sizeof(vec[]][2]

    -> geht nicht, falscher wert

    int test=size(vec);
    double speicher [test][2]

    -> geht nicht, compiler meckert

    warum geht das nicht ?? und wie erreiche ich mein ziel ?
    ty schonmal 🙂



  • ist mit "vector" ein std::vector gemeint

    warum geht das nicht ?? und wie erreiche ich mein ziel ?

    weil du nicht ein einziges mal die Doku gelesen hast:

    http://de.cppreference.com/w/cpp/container/vector

    du suchst die size()-Methode

    nur so als Tip: Wenn "ausprobieren" deine Strategie ist um Code zu schreiben wirst du mit C++ absolut keinen Spaß haben - das einzige was passiert ist das du unverständliche Fehlermeldungen bekommst - oder Programme die scheinbar laufen aber dennoch sehr absturzfreudig sind



  • ist ja nicht so das ich nach einer antwort geguckt hätte, habe aber keine gefunden. danke fürs klugscheißen. wenn du leuten nicht helfen willst guck doch bitte in kein forum.

    edit: dabei hast du noch nicht einmal geblickt was ich erreichen will


  • Mod

    Arrays kann man in C++ keine dynamische Größe geben. Wenn dein Compiler dies unterstützt, dann musst du dir bewusst sein, dass dies ein unportables Spezialfeature ist. Arrays dynamischer Größe sind in C++ Vectoren.

    Ansonsten hat Gast3 absolut recht und ich verstehe nicht, wieso du so gereizt reagierst. Freunde machst du dir so nicht. Du hast niemals die Doku von vector gelesen. Ausprobieren funktioniert nicht in der Programmierung. Das sind einfach zwei objektive Fakten, was regst du dich darüber so auf?



  • tut mir leid, das war meinerseits völlig unangebracht.


Log in to reply