Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Iteratoren

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
04.02.2007, 12:45 Uhr
Karldin Shinowa
Professional Noob


Es geht um iteratoren der STL Containerklassen. Versteh ich das eh so richtig:

begin() -->1. Element
end()--> eins nach dem letzten Element
rbegin-->das letzte Element
rend()-->ein Element vor dem 1. Element

Warum funktioniert dann end()-1 net??? Kann ich um das letzte Element zu bekommen einfach rbegin nehmen?
--
Ich will die Welt verbessern, doch Gott gibt mir nicht den Code.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
04.02.2007, 13:54 Uhr
BoBtheREapER
kein job für nen BoB


weil das Element nach dem letzten nicht existiert. Das heißt das Element hat auch keinen zeiger auf das vorherige Element.
--
"Zwei Dinge sind unendlich: Das Universum und die menschliche Dummheit. Aber beim Universum bin ich mir nicht ganz sicher." - Albert Einstein
www.blue-xenon.de.vu

Dieser Post wurde am 04.02.2007 um 13:54 Uhr von BoBtheREapER editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
04.02.2007, 14:13 Uhr
Karldin Shinowa
Professional Noob


Einleuchtend. Nächste Frage. Es gibt ja die Funktion insert nach der form
insert(iterator,data)

1) data wird jetzt also nach dem Element wo der iterator hinzeigt angehängt?
2)daher ist ein Aufruf mit end() unmöglich?
--
Ich will die Welt verbessern, doch Gott gibt mir nicht den Code.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
04.02.2007, 19:34 Uhr
0xdeadbeef
Gott
(Operator)


insert fügt vor dem Iterator ein.
--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
04.02.2007, 19:37 Uhr
BoBtheREapER
kein job für nen BoB


mit end funktioniert das trotzdem wieder nicht weil der iterator ja ungülltig ist
--
"Zwei Dinge sind unendlich: Das Universum und die menschliche Dummheit. Aber beim Universum bin ich mir nicht ganz sicher." - Albert Einstein
www.blue-xenon.de.vu
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
04.02.2007, 19:46 Uhr
0xdeadbeef
Gott
(Operator)


Klar funktioniert das damit. Du kannst auch --v.end() schreiben und kriegst damit nen forward-iterator auf das letzte Element. v.end() - 1 geht allerdings nur bei random access sequences wie vector, nicht etwa bei list.
--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
05.02.2007, 13:44 Uhr
Kest
saint


'n gutes Büchlein, hilft vielleicht:
www.informatik.hs-bremen.de/~brey/stlb.html
--
Wenn man einen Hufschlag hört, sollte man >Pferd< denken und nicht >Zebra<.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: