Teil von string vergleichen
-
Fehler 13 error C2784: "bool std::operator ==(const std::reverse_iterator<_RanIt> &,const std::reverse_iterator<_RanIt2> &)": template-Argument für "const std::reverse_iterator<_RanIt> &" konnte nicht von "std::string" hergeleitet werden.
-
~Airdamn schrieb:
Wie lautet denn die erste Fehlermeldung?
JustSomeCoder schrieb:
Welche Typen sind str1 und str2? Wäre äußerst hilfreich wenn du das vielleicht auch mal erwähnen würdest.

minder (der anfänger) schrieb:
Fehler 13 error C2784: "bool std::operator ==(const std::reverse_iterator<_RanIt> &,const std::reverse_iterator<_RanIt2> &)": template-Argument für "const std::reverse_iterator<_RanIt> &" konnte nicht von "std::string" hergeleitet werden.
Wenn du schon Hilfe erwartest solltest du wenigstens ALLE an dich gerichteten Fragen beantworten.
-
die strings sind aus der std
-
der fehler würde aber nicht auftreten, wenn die deklarationen der strings wie folgt lauten würden:
std::string str1; std::string str2;also, wie lauten die deklarationen? str1 und str2 scheinen eher container zu sein, die strings enthalten und nicht strings, die zeichen (also char) enthalten, oder?
-
ok das Programm tut fast das was es sol
nur wird der ganze string übernommen anstadt nur das erst zeichen:
buffercipher = pclear_text[i];
-
Ich nehme mal an pclear_text ist ein Array von string und nicht ein string selbst. Zeige doch jetzt endlich mal die Deklaration.
-
string clear_text;
an funktion -> &clear_text
funktion -> *clear_text
-
Bitte zeig jetzt noch mal diese Funktion. Wozu dereferenzierst du die Variable denn? So wie ich das sehe übergibst du doch eine Referenz.
Normalerweise greift man doch so zu.void funct(const std::string& str) { char a = str[0]; // auf ersten Buchstaben zugreifen }
-
Wie wärs eigentlich, wenn du nächstes Mal von Anfang an den ganzen relevanten Code posten würdest? Dass man fünf Mal nachfragen muss und jeweils ein Bruchstück erhält, über dessen Kontext man nur spekulieren kann, finde ich echt mühsam...

-
Ja, die fehlende Kooperation mindert die Motivation schon ganz erheblich, zu helfen.
Wenn der Typ schon nicht in der Lage ist selber zu programmieren, sollte man doch meinen, er wäre wenigstens befähigt sein Problem detailliert zu schildern bzw. auftretende Fragen dementsprechend zu erläutern.
-
zeig doch vor allem ma die deklaration der strings.
das alles klingt so als benutzt du arrays von strings also
std::string str1[5]; std::string str2[5]; // 5 ist nur ein beispieldann hättest du nähmlich, da ein string ein array von chars ist, ein 2D Array von chars.
dann müsste die abfrage auf den ersten buchstaben im ersten string des arrays so aussehen:
str1[0][0] == str2[0][0]; // oder so: str1[1][0] == str2[1][0]; // für den fall, dass du den ersten buchstaben des zweiten strings im array abfragen willst
-
Was aber nicht schönes C++ ist. Entweder man benutzt gleich
std::string, oder wenn man unbedingtchar-Arrays vergleichen will,strcmp()oderstd::equal().