vector iterator kann ich keinen wert zuweisen?!
-
ich kann irgendwie keinen iterator vom vector einen wert zuweisen, warum denn nicht?
std::vector<int>::iterator it; it = text.begin()
Fehler:
error C2679: Binärer Operator '=': Es konnte kein Operator gefunden werden, der einen rechtsseitigen Operanden vom Typ 'std::_Vector_iterator<_Ty,_Alloc>' akzeptiert (oder keine geeignete Konvertierung möglich)
[...]
-
Von der Namesgebung text würde ich mal sagen, dass passt nicht zu int.
-
richtig, aber es muss doch bei vector<char> auch text.begin() geben?! Oder wie mach ich dann da den Iterator?...
-
std::vector<char>::iterator it; it = text.begin()
-
peinlich peinlich
danke
wusste nicht, dass es so einfach ist, dachte iterator muss immer int sein...
-
Willst du für Zeichenketten nicht lieber
std::string
nehmen? Oder möchtest du wirklich nur einzelne Zeichen speichern (was aber gegen den Namen "text" sprechen würde)?
-
Nexus schrieb:
Willst du für Zeichenketten nicht lieber
std::string
nehmen? Oder möchtest du wirklich nur einzelne Zeichen speichern (was aber gegen den Namen "text" sprechen würde)?Vielleicht möchte er ja einen Vektor als "string" haben.. - Scheint mir so, wenn das text heisst.
-
drakon schrieb:
Vielleicht möchte er ja einen Vektor als "string" haben.. - Scheint mir so, wenn das text heisst.
Auch eine Möglichkeit - jedem das Seine
Ich plädiere aber weiterhin fürstd::string