Próbuję zwrócić niektóre informacje po wywołaniu metody toString(), która zawiera liczbę całkowitą i niektóre zmiennoprzecinkowe. Dowiedziałem się o ostringstream działa świetnie, ale gdy klasa, która zawiera tę metodę jest wywoływana w kółko, informacja zostaje ułożona na moim poprzednim wyjściu. Oto mój kodJak poprawnie używać ostringstream w C++?
ostringstream int_buffer, float_buffer, float_buffer2;
jest wprowadzany na początku mojej klasie, a następnie
string toString()
{
int_buffer << on_hand;
float_buffer << price;
float_buffer2 << generated_revenue;
string stron_hand = int_buffer.str();
string strprice = float_buffer.str();
string strrev = float_buffer2.str();
string output = "Product name: " + description + " Units left: " + stron_hand + " Price: " + strprice + " Revenue: $" + strrev;
return output;
}
wiem, że mój kodowanie jest okropne, jestem jeszcze dość nowy, ale przykładem mojego wyjścia jest
"Nazwa produktu: Film Jednostki biletów lewej: 49 Cena: 9.99 Przychody: $ 9.99"
„Nazwa produktu: Film Jednostki biletów lewej: 4926 Cena: 9.999.99 Przychody: $ 9.99239.76"
gdzie drugi powinien wyświetlać
"Nazwa produktu: Film Jednostki biletów lewej: 26 Cena: 9.99 Przychody: $ +239,76"
Wiem, że to tylko kwestia aktualizacji, ale tutaj się zgubiłem.
Dziękuję bardzo! To sprawia, że o wiele bardziej sensowne jest – Arminium
@Arminium, jeśli moja odpowiedź była przydatna, możesz oznaczyć ją jako zaakceptowaną. –