mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-08 12:48:16 +02:00
35 lines
788 B
ObjectPascal
35 lines
788 B
ObjectPascal
program tstatic1;
|
|
{$APPTYPE console}
|
|
{$ifdef fpc}
|
|
{$mode delphi}{$H+}
|
|
{$endif}
|
|
|
|
type
|
|
TSomeClass = class
|
|
private
|
|
class var
|
|
FSomethingStatic: Integer;
|
|
public
|
|
class procedure SomeClassMethod(A: Integer);
|
|
class procedure SomeStaticMethod(A: Integer); inline; static;
|
|
end;
|
|
|
|
{ TSomeClass }
|
|
|
|
class procedure TSomeClass.SomeClassMethod(A: Integer);
|
|
begin
|
|
WriteLn('TSomeClass.SomeClassMethod: ', A);
|
|
end;
|
|
|
|
// for now fpc requires 'static' modifiers also in the class implementation
|
|
class procedure TSomeClass.SomeStaticMethod(A: Integer);
|
|
begin
|
|
WriteLn('TSomeClass.SomeStaticMethod: ', A);
|
|
WriteLn('TSomeClass.FSomethingStatic: ', FSomethingStatic);
|
|
SomeClassMethod(A + 1);
|
|
end;
|
|
|
|
begin
|
|
TSomeClass.FSomethingStatic := 4;
|
|
TSomeClass.SomeStaticMethod(1);
|
|
end. |