Ergebnis 1 bis 7 von 7
  1. #1
    Das Leben ist der Lehrer Avatar von DoS
    Registriert seit
    18.08.2008
    Beiträge
    528

    Standard 2Fragen: Sinn Iterator (Vektoren) und Unterschied zwischen . und ->

    Hallo,
    meine Frage, wie man aus dem Threadnamen schon lesen kann, ist, welchen Sinn ein Iterator bei Vektoren hat. Stattdessen könnte ich doch einfach einen "normalen" Zeiger nutzen, der auf ein Element im Vektor zeigt?

    Und meine zweite Frage: Wenn man zum Beispiel bei Klassen Funktionen hat, dann führt man die ja so aus: Klassenname.Funktion . Manchmal sehe ich das aber auch mit Klassenname->Funktion.
    Wann ist was richtig bzw. wann muss welches Zeichen verwenden?

    Bitte erklärt mir das möglichst einfach, damit ich auch noch mitkomme (gedanklich).

    MfG. -DoS

  2. #2
    Richard Stallman Avatar von Sawyer
    Registriert seit
    26.07.2008
    Beiträge
    2.037

    Standard

    Und meine zweite Frage: Wenn man zum Beispiel bei Klassen Funktionen hat, dann führt man die ja so aus: Klassenname.Funktion . Manchmal sehe ich das aber auch mit Klassenname->Funktion.
    Wann ist was richtig bzw. wann muss welches Zeichen verwenden?
    Der Pfeil wird dann verwendet , wenn es sich um einen Zeiger handelt , der auf eine klasse zeigt , mit dem Pfeil kann man also auf die Eigenschaften zugreifen.
    Der Punkt wird dann verwendet , um auf die Eigenschaften eines ganz normalen Klassen Objekts zuzugreifen.

    PS: Falls ich mit irgendwas falsch liegen sollte , korrigiert mich :p

  3. #3
    Das Leben ist der Lehrer Avatar von DoS
    Registriert seit
    18.08.2008
    Beiträge
    528

    Standard

    Danke erstmal für die Antwort. Verbleibt noch die erste Frage

    Zitat Zitat von DoS Beitrag anzeigen
    meine Frage, wie man aus dem Threadnamen schon lesen kann, ist, welchen Sinn ein Iterator bei Vektoren hat. Stattdessen könnte ich doch einfach einen "normalen" Zeiger nutzen, der auf ein Element im Vektor zeigt?
    MfG. -DoS

  4. #4
    W32.FunLove Avatar von Qgel
    Registriert seit
    23.10.2005
    Beiträge
    163

    Standard

    Noch zur 1. Frage:
    Code:
    *(x).f
    ist das gleiche wie
    Code:
    x->f
    XML is like violence, if it doesn't fix the problem, you aren't using enough.

    Random Numbers are too important to be left to chance.

  5. #5
    Das Leben ist der Lehrer Avatar von DoS
    Registriert seit
    18.08.2008
    Beiträge
    528

    Standard

    Das war die zweite Frage . Aber danke für die Erweiterung

    Wie gesagt, ich brauche noch die Lösung zur ungelösten Frage

    gruß

  6. #6
    Der mit Anatidaephobie Avatar von blackberry
    Registriert seit
    11.07.2008
    Beiträge
    2.350

    Standard

    Ich wollte das eigentlich schon länger mal sagen, nur dann war Free-Hack ziemlich langsam und meine Antwort kam nicht an... nochmal schreiben war mir dann zu doof.

    Im Grunde hast du 3 Möglichkeiten dir die Elemente eines vectors anzuschauen:
    - Pointer
    - Zählerschleife (for(int zaehler = 0; zaehler < blah; zaehler++))
    - Iteratoren
    (Iteratoren sind intern übrigens meißt als Pointer implementiert)

    Im Grunde sind alle gleichwertig und können parallel verwendet werden.
    Praktisch bei Iteratoren ist jedoch, dass sie übersichtlicher sind.
    Bei normalen Pointern musst du viel casten und bei Zählerschleifen wird der Term manchmal sehr lang (sagen wir du hast einen mehrdimensionalen Vector: meinVector[a][b][c][d][e]).

    Zudem benutzen viele Funktionen der Klassen vector und string Iteratoren.

    Also zusammenfassend:
    Es ist im Grunde egal was du benutzt, aber Iteratoren sind praktischer und werden von den Standardklassen benutzt.

    PDFTT cr3w a.E. — ReiDC0Re, lindor, Sera, berry
    please do feed the trolls crew and elk
    Ehrenwerte Mitglieder im Ruhestand: OpCodez, SFX.
    "Was sich blackberry gerade denkt" — Vorsicht! Frei laufender Wahnsinn!
    Zitat von fuckinghot19: "PS: Blackberry ist auf FH der Trollkönig ^^."
    An dieser Stelle danke ich all meinen Fans und Hatern gleichermaßen ^.^

  7. #7
    Das Leben ist der Lehrer Avatar von DoS
    Registriert seit
    18.08.2008
    Beiträge
    528

    Standard

    Danke BlackBerry auf dich ist, wie immer eigentlich Verlass, dass selbst die "tiefsten" Threads geklärt werden.

    Schade eigentlich, dass nicht so viele Leute im C++ Forum aktiv sind. Aber nein, die müssen ja alle auf .NET "programmieren" (bei den meisten ist es das nicht )

    MfG. -DoS

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •