Ugrás a tartalomhoz

std::vector::resize

A Wikiszótárból, a nyitott szótárból


Főnév

std::vector::resize (tsz. std::vector::resizes)

  1. (informatika) A std::vector::resize() függvény a C++ standard könyvtárban arra szolgál, hogy a vektor méretét megváltoztassa.

Ha a vektor mérete megnő, akkor új elemek jönnek létre alapértelmezett értékkel vagy megadott értékkel.
Ha csökken a méret, akkor a fölösleges elemek törlődnek.



Szintaxis:

void resize(size_type új_méret);
void resize(size_type új_méret, const T& érték);
  • új_méret — A vektor új kívánt mérete.
  • érték — Ha növekszik a vektor, az újonnan létrehozott elemek ezzel az értékkel inicializálódnak.



Példa magyar kommentekkel:

#include <iostream>
#include <vector>

int main() {
    std::vector<int> v = {1, 2, 3};

    // Növeljük a vektor méretét 5-re, az új elemek 0 értékűek lesznek
    v.resize(5);
    // Eredmény: 1 2 3 0 0
    for (int x : v) std::cout << x << " ";
    std::cout << std::endl;

    // További növelés, de most az új elemeket 42-vel töltjük fel
    v.resize(7, 42);
    // Eredmény: 1 2 3 0 0 42 42
    for (int x : v) std::cout << x << " ";
    std::cout << std::endl;

    // Csökkentjük a méretet 3-ra, az utolsó elemek eltűnnek
    v.resize(3);
    // Eredmény: 1 2 3
    for (int x : v) std::cout << x << " ";
    std::cout << std::endl;

    return 0;
}

Összefoglalás magyarul:

Függvényhívás Mit csinál?
v.resize(n) Átméretezi a vektort n hosszúságúra, új elemek alapértelmezett értéket kapnak.
v.resize(n, érték) Átméretezi a vektort n hosszúságúra, új elemek az adott értékkel töltődnek fel.
Ha n < v.size() A vektor végétől eldobja a fölösleges elemeket.