aufgerufen Ich möchte eine Datei mit C++ erstellen und etwas darin schreiben. Ich habe zwei Klassen, eine mit einem Vererbung :: writer (String-Name) und eine weitere Unterklasse namens Vererbung1 (int zahl). Ohne die ganze Zahl funktioniert es genau, aber wenn ich die Ganzzahl in eine Zeichenkette schreiben und nach der Funktion einfügen will, wird sie nicht funktionieren.String als Funktion und von anderen Unterklasse mit ganzzahligen Wert
das funktioniert normalerweise
Vererbung.cpp
void Vererbung::Writer(string name)
{
ofstream text;
text.open ("test.txt", ios::trunc);
text <<"write something\n";
text <<"again2 \n";
text <<"again 3\n";
text << name;
text.close();
}
Vererbung1.cpp
include "Vererbung.h"
void Vererbung1::Writer(int zahl)
{
std::ostringstream ostr;
ostr<< zahl;
name = "\n" "Test\n""Test\n""Test\n" ostr.str();
Vererbung::Writer(name);
}
Als ich es in Haupt laufen, sagt es, dass ich eine Notwendigkeit ';' vor ostr.str(); Wie kann ich das beheben, wenn ich einen ganzzahligen Wert in eine Datei hineinstreichen möchte?
Verwenden Sie +, um 'std :: string' Objekte anzufügen. – aschepler
Sie können das String-Einfügen nur mit String-Literalen verwenden, es kann nicht zum Verketten mit Variablen oder Ausdrücken verwendet werden. – Barmar
@aschepler Veröffentlichen Sie das als Antwort. – Barmar