Frage zu Iteratoren
-
Hi,
ich habe gerade mal eine Frage:
Ist das Vergleichen von iterator mit const_iterator vom Container eines Typs gemäß STL zulässig? Oder ist das implementationsabhängig und kann funktionieren, muss aber nicht?
Ich weiß, dass man normale Iteratoren nicht mit const-Iteratoren mischen sollte (speziell bei den STL-Algorithmen wird's schnell nervig :)) - es geht mir rein ums Prinzip.Gruß!
-
*push*
Gibt es niemanden, der das weiß?
Gruß!
-
ka
ich würde sagenimplementationsabhängig
typen sollten imho immer mit der gleichen "substanz" verglihen werden. sollte aber trozdem gehen, da die ja beide des gleichen types sind nur eines halt const noch.
-
Den selben Typ haben sie eben genau nicht.
Das eine ist Container::iterator und das andere ist Container::const_iterator. Das sind zwei verschiedene Typnamen. Was mich nun interessiert ist, ob die STL Garantien zwischen diesen beiden Typen gibt. Rein theoretisch könnte man das ja als separate Klassen implementieren, die nichts miteinander zu tun haben. (konstruierten Fall für Gründe dafür einfügen ;))