Mik azok az iterátorok? Nem bírom megérteni.
Sokat tanulmányoztam őket a cplusplus.com weboldalon de nem sokkal jutottam előbbre velük.
Még kezdő vagyok de érzem hogy már ideje volna megtudnom pontosan mikor is használják ezeket mi az értelmük?
Nem értem őket egyáltalán.
Úgy lehetne felfogni, hogy az egy objektum, ami azt tudja, hogy "add ide nekem a következő elemet". A "vedd őket sorra" objektum.
Az a lényege, hogy egy kollekciót úgy járhass be, hogy nem érdekel, hogy épül föl a kollekció, csak az, hogy mik vannak benne és te egyiket a másik után le akarod kérdezni. Az iterátor az, amitől kérheted az elemeket.
Mert ugye az a koncepció, hogy minden kollekciót (legyen az tömb, vector vagy bináris keresőfa) egy intervallum jellemez, amit az első és az utolsó utáni elemre mutató iterátor ír le. A legtöbb algoritmus csupán ezt az intervallumot akarja bejárni, és nem érdekli, mi van alatta.
Ugye mint említettem, az iterátor úgy működik, mint a mutató, és a mutatókról tudjuk, hogy mit lehet velük csinálni: dereferálni (* és ->), léptetni (++), visszafele léptetni (--) és alkalomadtán összeadni egésszel (ami negatív is lehet), kivonni belőle másik mutatót. Ez utóbbi három nem minden iterátorra jellemző, de az első kettőt mindegyik tudja.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!