當定義字符串常量時,你可這樣寫:
const AuthorName = 'Marco Cantù';
從Delphi 3 開始,你可以用另一種方式寫:
resourcestring AuthorName = 'Marco Cantù';
上面兩個語句都定義了一個常量,也就是定義了一個在程序運行期間保持不變的值,但兩者的實現過程卻不同,用resourcestring 指令定義的字符串變量將被保存到程序資源的字符串表中。
resourcestring
AuthorName = 'Marco Cantù';
BookName = 'Essential Pascal';
procedure TForm1.Button1Click(Sender: TObject);
begin
ShowMessage (BookName + #13 + AuthorName);
end;
以上代碼中的兩個字符串將分兩行輸出顯示,因爲字符串被分行符 #13 隔開。
有趣的是,當你用資源編輯器打開執行文件時,你會在程序資源中看到你所定義的字符串。這意味着字符串並沒有進入編譯代碼,而是保存在執行文件 (EXE文件) 的一個單獨區域。
注意:簡而言之,採用資源的好處一方面可讓Windows 來完成有效的內存處理,另一方面不用更改源代碼就可實現程序的本地化 (把字符串翻譯成不同的語言)。