2009-07-08 34 views
6

我一派,我猛吃,我已经看到了其他的“重复”在这里,但他们都不德尔福2009年更新了工作在C#中更新4.如何在Delphi 2009中声明静态变量?

一样,我想在一个静态变量行或尽可能短。最后,它像一个全局变量,但它的排序。

在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

“...但它的排序” - 这是什么意思? – jpfollenius 2009-07-08 06:23:14

+0

你想在哪个范围级别声明你的静态变量?功能级别?课程级别?单元级别? – jpfollenius 2009-07-08 06:24:19

回答

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; 

编辑:注意类变种的。你忘了那部分。

相关问题