Konstanden werden quasi direkt ersetzt
Delphi-Quellcode:
// Delphi macht intern aus
const c = 'abc';
MyProc(C);
// ein
MyProc('abc');
// und aus
resourcestring c = 'abc';
MyProc(C);
MyProc(LoadString(ID)); // ID = die StringID in den Resourcen
LoadString
[edit]
Zitat:
Nicht ganz. Eine Konstante wird an jede Verwendungsstelle kopiert. Gleiche Texte sind also mehrfach in der Exe vorhanden (Jedenfalls macht es D6 so).
eigentlich versucht Delphi bei "langen Strings" und wenn sie als AnsiString, WideString, PChar usw. eingesetzt werden diese nur einmal in die EXE einzubinden und trägt überall nur einen Zeiger auf den gemeinsamen String ... zumindestens ist es in neueren Delphis so (ich glaub mein D7 macht es auch so)