Delphi – How to declare static variables in Delphi 2009

classdelphidelphi-2009static

I googled,I binged,I already have seen the other "duplicates" here,but none of them work in Delphi 2009 updated up to update 4.

Like in C#,I want to make a static variable in on line or as short as possible.In the end it works like a global variable,but its sorted.

What's the shortest way to do this in delphi 2009?

EDIT

I followed some of your answers,but it doesn't work.

type:

type
TmyClass = class(TObject)
  var staticVar:integer;
end;

code:

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;

I get the following errors:

[DCC Error] Unit1.pas(31): E2096 Method identifier expected 

[DCC Error] Unit1.pas(32): E2096 Method identifier expected

Best Answer

type
  TMyClass = class(TObject)
  private
    class var FX: Integer;
  public
    class property X: Integer read FX write FX;
  end;

or shorter if you don't use a property

type
  TMyClass = class(TObject)
  public
    class var X: Integer;
  end;

edit: Note the class in class var. You forgot that part.