La version 13.03.16 de FlashPascal introduit la notion d'objet dynamique.
Un objet dynamique ne possède pas de déclaration, et est vu par le compilateur comme un Variant.
Il se déclare par la syntaxe suivante :
[membre1 : valeur1; membre2 : valeur2; ...].
L'exemple FlashMine utilise une matrice qu'il a fallut déclarer comme ceci :
type
TMatrix = class
matrixType: string;
x,y,w,h : Double;
r : Double;
constructor Create;
end;
constructor TMatrix.Create;
begin
matrixType := 'box';
x := -4.5;
y := -4.5;
w := 6;
h := 6;
r := 0;
end;
var
Matrix: TMatrix;
begin
Matrix := TMatrix.Create;
end;
Toute cette déclaration peut être remplacée par la syntaxe des objets dynamiques.
var Matrix: Variant; begin Matrix := [matrixType: 'box'; x:-4.5; y:-4.5; w:6; h:6; r:0]; end;