pascalabcnet/TestSuite/extendedindexedproperty3.pas
Александр Погорелов 6f9c2b726d auto properties + extended indexed properties
2018-12-05 11:36:45 +03:00

26 lines
583 B
ObjectPascal

type
TBase = abstract class
protected a := new integer[10,10,10];
end;
TExample = class(TBase)
public property p[i, j: integer; k: integer]: integer
read a[i, j, k] write begin a[i,j,value] := k*k+i+j; end;
end;
begin
var c := new TExample();
var k := 5;
for var i:=0 to 9 do
for var j:=0 to 9 do
c.p[i, j, k] := 0;
for var i:=0 to 9 do
for var j:=0 to 9 do
assert(c.p[i, j, 0] = 25 + i + j);
for var i:=0 to 9 do
for var j:=0 to 9 do
for var d:=1 to 9 do
assert(c.p[i, j, d] = 0);
end.