Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Käsekönig

1x Contest-Sieger

  • »Käsekönig« ist der Autor dieses Themas
  • Private Nachricht senden

1

18.12.2009, 20:08

Strings

Hallo!

Ich bin grad dabei, mich bisschen in die SFML einzuarbeiten, und hab grad ein kleines Pong programmiert. :)

Jetzt möcht ich da halt noch einen Punktezähler einbauen, und den Punktestand dann am Bildschirm präsentieren. Um jetzt einen Text auf dem Bildschirm darzustellen, verwende ich sf::String.
Tjaaa, und die SetText Funktion dieser Klasse erwartet jetzt einen String. Ich möcht aber den Wert einer int Variable übergeben.
Habs schon versucht mit std::String, ob ich da irgendwie eine int Variable in einen Text umwandeln kann, hab aber nichts gefunden. Und jetzt steh ich an.

Vielleicht stell ich mich grad bisschen blöd an, weiß nicht. Aber ich komm irgendwie auf keine Lösung.

Wär nett, wenn ihr mir helfen könntet! :)

Lg

2

18.12.2009, 20:10

guck dir mal std::stringstream an ;)

3

18.12.2009, 20:14

Hier das ganze mal als Code ausgeschrieben:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
std::string IntToString (int i )
{
    std::string s;
    std::stringstream out;
    out << i;
    s = out.str();
    return s;
}


Für float überladen oder gleich ne Templatefunktion draus basteln.

Laguna

Käsekönig

1x Contest-Sieger

  • »Käsekönig« ist der Autor dieses Themas
  • Private Nachricht senden

4

18.12.2009, 20:21

Wenn ich das hier schreib:

C-/C++-Quelltext

1
std::stringstream Punkte;

bekomm ich diesen Fehler:
error C2079: 'out' verwendet undefiniertes class 'std::basic_stringstream<_Elem,_Traits,_Alloc>'

5

18.12.2009, 20:26

Hallo

Immer den passenden Header inkludieren. Desweiteren gibt es auch bei boost ein Funktion namens lexical_cast, die eben das gleiche leistet. Also wenn du eh mit boosz arbeitest, kannst du auch das verwenden.

chrische

Käsekönig

1x Contest-Sieger

  • »Käsekönig« ist der Autor dieses Themas
  • Private Nachricht senden

6

18.12.2009, 20:31

Ich arbeit noch nicht mit boost. :)

Zitat von »"chrische5"«

Immer den passenden Header inkludieren.

Welchen muss ich da inkludieren?? Den Header "Stringstream" gibt es nämlich nicht!^^

7

18.12.2009, 20:35

#include <sstream>

8

18.12.2009, 20:50

Zitat von »"Käsekönig"«

Welchen muss ich da inkludieren?? Den Header "Stringstream" gibt es nämlich nicht!^^
Fürs nächste Mal kannst du dir die Referenz www.cplusplus.com anschauen, da findest du auch das Interface von std::stringstream.

Käsekönig

1x Contest-Sieger

  • »Käsekönig« ist der Autor dieses Themas
  • Private Nachricht senden

9

18.12.2009, 20:52

Danke erstmal für die Hilfe, das funktioniert mal. :)

Aber. Ich möcht ja in jedem Frame meine Stringstream-Instanz neu beschreiben. Weil sich ja der Punktestand immer ändert.
Ja, jetzt hab ich zuvor immer die clear-Methode aufgerufen, in der Hoffnung, dass die den Inhalt löscht, und ich somit die neuen Daten reinschreiben kann.

Dem war aber nicht so. :(

Vielleicht weiß einer, woran das liegt.

Käsekönig

1x Contest-Sieger

  • »Käsekönig« ist der Autor dieses Themas
  • Private Nachricht senden

10

18.12.2009, 20:55

Sorry für den Doppelpost, das Problem ist gelöst.
Auf der Seite www.cplusplus.com bin ich fündig geworden.
Dankeschön an alle. :)

Werbeanzeige