Les' dir bitte den ersten Satz seiner Antwort noch einmal in Ruhe durch.
Dein String ist eine Konstante (s.
const).
Das bedeutet auch, dass der Speicherbereich, der für diesen String vom Compiler auf dem Stack angelegt wurde,
konstant ist.
Jeder einzelne weitere Buchstabe, der hinzugefügt wird, müsste seinen eigenen Speicherplatz bekommen. Das wiederum bedeutet für dich,
dass du dich um das Speichermanagement kümmern müsstest (s.
new, delete bzw. in C malloc, free ect.).
An dieser Stelle bin ich nun mal so dreist dir zu unterstellen, dass du C++ verwendest, und sogleich einen Tipp ans Herz zu legen.
Der ganze Mist der oben beschrieben wird (also diese Buchstabensuppe über Speichermanagement und Stack) wird dir von einer Klasse abgenohmen.
Die Klasse heißt
String. Du kannst sie wie folgt verwenden.
|
C-/C++-Quelltext
|
1
2
3
4
5
6
7
8
9
10
11
|
// Header für die Stringklasse inkludieren
#include <string>
std::string szFrage = "Das ist doch viel einfacher, na?";
// Diese Klasse hat eine Reihe von Methoden; einfach Googlen ;)
// Die WinAPI kennt leider keine Klassen und somit keine "String"-klasse;
// Sie erwartet stet's C-Strings (also Arrays), aber das Problem löst diese Klasse auch
hWnd = CreateWindowEx(szFrage.c_str(), // Die Methode c_str() gibt ein C-String zurück
... )
|