本文整理自网络,侵删。
您可以在Delphi中使用可重写常量。
以下代码重写常量。此代码将导致编译错误。
procedure F;const foo: Integer = 0;begin foo := foo + 1; //[dcc32 エラ?`] Project1.dpr(13): E2064 代入できない左?x??です WriteLn(foo);end;使用编译器命令“ {$ J +}”或“ {$ WRITEABLECONST ON}”将导致可以更改的常量。
procedure F;const{$WRITEABLECONST ON} foo: Integer = 0;{$WRITEABLECONST OFF}begin foo := foo + 1; WriteLn(foo);end;创建以下控制台应用程序作为示例应用程序。
program Project1;
{$APPTYPE CONSOLE}{$R *.res}
uses System.SysUtils;
procedure F;const{$WRITEABLECONST ON} foo: Integer = 0;{$WRITEABLECONST OFF}begin foo := foo + 1; WriteLn(foo);end;
begin F; F; F;end.执行结果如下。
123
相关阅读 >>
Delphi 格式化输出函数(2): formatdatetime
Delphi 7 + gdiplus 简单实现双缓冲绘制移动图形
Delphi “invalid floating point operation.”错误的解决方法
更多相关阅读请进入《Delphi》频道 >>