Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: C++: Vectori lista toisinpäin

mika132 [24.01.2012 16:40:49]

#

Terve! Miten voidaan "kääntää" vectori lista toisinpäin?
Yritin näin (karkea versio siis):

std::vector<Esim::Vectorina>::iterator vectori_lopusta = vectorit.end();
while(vectori_lopusta != Esim::vectorit.begin()) {
vectori_lopusta--;
}

Mutta tulee 0x3 errori. Jos muutan kaiken niin, että alusta loppuun niin tuota erroria ei tule.

petrinm [24.01.2012 16:55:39]

#

Jos haluat iteroida sen käänteisesti (kuten mallisi), niin tämä sivu kertonee kaiken: http://www.cplusplus.com/reference/stl/vector/rbegin/

Jos haluaa luoda uuden listan, joka on käänteinen jostai toisesta niin:

std::vector<T> re (li.rbegin(), li.rend());

mika132 [24.01.2012 17:10:20]

#

Kiitokset! En tiennyt tuon jälkimmäisen olevan mahdollista. :)

koo [24.01.2012 23:21:17]

#

#include <algorithm>

std::reverse(Esim::vectorit.begin(), Esim::vectorit.end());

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta