String/Text als const oder #define?
-
Wie kann man String/Text als const oder #define in header einbinden. ich will einfach ein paar standardzeichenketten im Code dann einsetzen.
-
im .h File:
extern CString const BLA;
im .cpp File:
CString const BLA = "BLUBBER";
Geht natürlich auch mit char const *. Von #define würde ich bei Konstanten die Finger lassen.
-
ähm das const kommt vor den Variablentyp
-
Und was soll das denn bitte darstellen? das ist doch mal derbst unschön ... und define auch ... wenn de feste strings hast, kannst du bsw ne resource dafür nutzen und dann kannst de die acuh gaanz leicht ändern ...
-
toller comment, aber keine ahnung was du damit meinst und wie man das macht..
-
In den Resourcen gibt es den StringTable und bei CString die Funktion LoadString.
-
kann jemand hierzu mal ein kleines Codebsp. schreiben. kann mir immernoch nicht vorstellen wie man das ohne viel Aufwand (meinetwegen mit einer Stringtable) in der Resource händelt.
-
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcmfc98/html/_mfc_cstring.3a3a.loadstring.asp
Kleiner Tip am Rande: Irgendwann hast du den Newbi-Bonus verspielt und wenn du dann nicht zeigst, dass du wenigstens was in der MSDN nachgeschlagen hast und vielleicht mal Code von einem Eigenversuch bringst, dann verlieren die Leute schnell die Lust zu helfen.
-
ok ok, ich hatte LoadString und StringTable gar nicht beides im Zusammenhang gesehen....
Danke.
-
-
Dann greif auf den Globalen Namespace zu und nimm die LoadString Funktionen die net von der MFC gekapselt wurden -.-
-
was muss für hInstance angegeben werden??
::LoadString(HINSTANCE,...);
und wie lässt sich der nBufferMax als 4 Parameter bestimmen?
Gibt es keine einfachere Variante auf Stringconst. zurückzugreifen?
-
Das MSDN schrieb:
Parameters hInstance [in] Handle to an instance of the module whose executable file contains the string resource. To get the handle to the application itself, use GetModuleHandle(NULL). uID [in] Specifies the integer identifier of the string to be loaded. lpBuffer [out] Pointer to the buffer to receive the string. nBufferMax [in] Specifies the size of the buffer, in TCHARs. This refers to bytes for ANSI versions of the function or WCHARs for Unicode versions. The string is truncated and NULL terminated if it is longer than the number of characters specified.
Vielleicht mal lesen?
-
ich hab hier eVC++, da ist die MSDN n bischen anders geschrieben... Hab das dort nicht so klar rausgelesen.
Danke.