pascalabcnet/TestSuite/recinit2.pas

92 lines
1.9 KiB
ObjectPascal
Raw Permalink Normal View History

2021-01-05 14:20:24 +03:00

2015-05-14 22:35:07 +03:00
type
TRec = record a : integer; end;
TRec2 = record b : array of real; end;
TRec3 = record a : TRec2; end;
TMas = array[1..3] of TRec;
TRec4 = record a : string[4]; end;
procedure Test;
var i := 1;
rec : TRec := (a:i+3);
arr : TMas := ((a:i),(a:i+1),(a:i+2));
arr2 : array of TRec := ((a:i),(a:i+1),(a:i+2));
rec2 : TRec2 := (b:(i,i,i));
rec4 : TRec3 := (a:(b:(i,i,i)));
rec6 : TRec4 := (a:'abcde');
begin
assert(rec.a=4);
assert(arr[2].a=2);
assert(arr2[2].a=3);
assert(rec2.b[0]=i);
assert(rec4.a.b[0]=i);
assert(rec6.a='abcd');
end;
procedure Test2;
var i := 1;
rec : TRec := (a:i+3);
//arr : TMas := ((a:i),(a:i+1),(a:i+2));
//arr2 : array of TRec := ((a:i),(a:i+1),(a:i+2));
rec2 : TRec2 := (b:(i,i,i));
rec4 : TRec3 := (a:(b:(i,i,i)));
procedure Nested;
begin
assert(rec.a=4);
//assert(arr[2].a=2);
//assert(arr2[2].a=3);
assert(rec2.b[0]=i);
assert(rec4.a.b[0]=i);
end;
begin
assert(rec.a=4);
//assert(arr[2].a=2);
//assert(arr2[2].a=3);
assert(rec2.b[0]=i);
assert(rec4.a.b[0]=i);
Nested;
end;
var i := 1;
2021-01-05 14:20:24 +03:00
procedure Test3;
begin
var rec : TRec := (a:i+3);
var arr : TMas := ((a:i),(a:i+1),(a:i+2));
var arr2 : array of TRec := ((a:i),(a:i+1),(a:i+2));
var rec2 : TRec2 := (b:(i,i,i));
var rec4 : TRec3 := (a:(b:(i,i,i)));
var rec6 : TRec4 := (a:'abcde');
assert(rec.a=4);
assert(arr[2].a=2);
assert(arr2[2].a=3);
assert(rec2.b[0]=i);
assert(rec4.a.b[0]=i);
assert(rec6.a='abcd');
end;
var
2015-05-14 22:35:07 +03:00
rec : TRec := (a:i+3);
arr : TMas := ((a:i),(a:i+1),(a:i+2));
arr2 : array of TRec := ((a:i),(a:i+1),(a:i+2));
rec2 : TRec2 := (b:(i,i,i));
rec4 : TRec3 := (a:(b:(i,i,i)));
rec5 : record a : TRec3 := (a:(b:(i,i,i))) end;
rec6 : TRec4 := (a:'abcde');
begin
assert(rec.a=4);
assert(arr[2].a=2);
assert(arr2[2].a=3);
assert(rec2.b[0]=i);
assert(rec4.a.b[0]=i);
assert(rec5.a.a.b[0]=i);
assert(rec6.a='abcd');
Test;
Test2;
2021-01-05 14:20:24 +03:00
Test3;
2015-05-14 22:35:07 +03:00
end.