Ressourcenstrings
Nach oben zu Unterstützung für Object Pascal-Datentypen und Sprachkonzepte
Wenn im Quelltext in einer Delphi-Unit Ressourcenstrings verwendet werden, erzeugt der Delphi-Compiler (DCC32) beim Erstellen der Header-Datei für jeden Ressourcenstring eine globale Variable und ein entsprechendes Präprozessor-Makro. Mithilfe der Makros werden die Ressourcenstrings automatisch geladen und sollen im C++-Quelltext überall dort verwendet werden, wo der betreffende Ressourcenstring referenziert wird. Beispielsweise könnte der Ressourcenstring-Abschnitt im Delphi-Quelltext Folgendes enthalten:
unit MyUnit;
interface
resourcestring
Warning = 'Be careful when accessing string resources.';
implementation
begin
end.
Der dafür vom Delphi-Compiler für C++Builder erzeugte Quelltext lautet folgendermaßen:
extern PACKAGE System::Resource ResourceString _Warning;
#define Myunit_Warning System::LoadResourceString(&Myunit::_Warning)
- Hinweise:
- Unit-Namen werden in C++ normalisiert, weil die Sprache C++ die Groß-/Kleinschreibung berücksichtigt. Deshalb wird in C++ der Unit-Name "MyUnit" in "Myunit" geändert.
- "_Warning" wird, wie alle anderen Instanzen von ResourceString, die vom Delphi-Compiler generiert werden, im Namespace "Myunit" deklariert, daher müssen Sie folgendermaßen darauf zugreifen:
Myunit::_Warning
. - In der "define"-Zeile können Sie auf den exportierten Delphi-Ressourcenstring als "Myunit_Warning" ohne expliziten Aufruf von LoadResourceString zugreifen.
Siehe auch
- Unterstützung für Object Pascal-Datentypen und Sprachkonzepte
- Ressourcenstrings in der Delphi-Sprachreferenz
- Ausgabe - C/C++
- LoadResourceString (Funktion)
- ResourceString (Klasse)
- ResourceString (C++) (Codebeispiel)