⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 testpropertyinherited.out

📁 格式化源码的最新板
💻 OUT
字号:
unit testpropertyinherited;

interface

const
  has_bar = False;
  five    = (2 + 2);

type
  tcustomfoo = class(TObject)
  private
    function getfoo: integer;
  protected
    property foo: integer Read getfoo nodefault;
    property bar: integer Read getfoo stored has_bar;
    property monkey: integer Read getfoo;
    property soy: integer Read getfoo;
  end;

  tfoo = class(TCustomFoo)
  public
    property foo;
  end;

const
  foo_default = 3;

type
  tmegafoo = class(TFoo)
  private
    function getfishes(const pic: integer): integer;
    procedure setfishes(const pic, Value: integer);
  public
    property fishes[const pic: integer]: integer Read getfishes Write setfishes; default;
  published
    property bar default 3;
    property foo default foo_default + 1;
    property monkey stored five;
    property soy stored five + 1 nodefault;
  end;

  tuserhasdefaults = class(TObject)
  private
    function getdef1: integer;
  protected
    function getdef2(const pic: integer): integer; virtual;
    procedure setdef2(const pic, Value: integer); virtual;
  public
    property def1: integer Read getdef1;
    property def2[const pic: integer]: integer Read getdef2 Write setdef2;
  end;

  thasdefaults = class(TUserHasDefaults)
    property def1 default 1;
    property def2; default;
  end;

  tdefhasoverrides = class(TUserHasDefaults)
  protected
    function getdef2(const pic: integer): integer; override;
    procedure setdef2(const pic, Value: integer); override;
  end;

implementation

function tcustomfoo.getfoo: integer;
begin
  Result := 3;
end;

function tmegafoo.getfishes(const pic: integer): integer;
begin
  Result := pic - 1;
end;

procedure tmegafoo.
setfishes(const pic, Value: integer);
begin
end;

function tuserhasdefaults.getdef1: integer;
begin
  Result := 0;
end;

procedure tuserhasdefaults.setdef2(const pic, Value: integer);
begin
end;

function tuserhasdefaults.getdef2(const pic: integer): integer;
begin
  Result := pic + 1;
end;

function tdefhasoverrides.getdef2(const pic: integer): integer;
begin
  Result := inherited def2[pic] + inherited def2[pic + 1] + 2;
end;

procedure tdefhasoverrides.setdef2(const pic, Value: integer);
begin
  inherited def2[pic] := Value;
end;

end.
 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -