我用谷歌搜索,我已经看到了,我已经看到了其他的“重复”,但是它们都没有在Delphi 2009中更新到更新4。
就像在C#中一样,我希望在线或尽可能短地创建一个静态变量。最后它的工作方式就像一个全局变量,但它的排序。
在delphi 2009中最简单的方法是什么?
修改
我按照你的一些答案,但它不起作用。
型:
type
TmyClass = class(TObject)
var staticVar:integer;
end;
代码:
procedure TForm1.Button1Click(Sender: TObject);
var a:integer;
begin
TMyClass.staticVar := 5; // Line 31
a := TMyClass.staticVar; // Line 32
MessageBox(0,IntToStr(a),'',0);
end;
我收到以下错误:
[DCC Error] Unit1.pas(31): E2096 Method identifier expected
[DCC Error] Unit1.pas(32): E2096 Method identifier expected
答案 0 :(得分:18)
type
TMyClass = class(TObject)
private
class var FX: Integer;
public
class property X: Integer read FX write FX;
end;
如果您不使用财产,则或更短
type
TMyClass = class(TObject)
public
class var X: Integer;
end;
修改:请注意类var中的类。你忘记了这一部分。