Bonjour ! Je vous propose d'échanger des observations autour du problème suivant : écrire pour FlashPascal du code compatible avec les compilateurs disons usuels comme Free Pascal ou Delphi.
Ou plus modestement, je vous fais part des problèmes (peu nombreux) rencontrés lors d'une tentative pour compiler avec Delphi 6 une unité modifiée pour FlashPascal.
En fait je n'ai guère rencontré qu'un seul problème, c'est que les déclarations suivantes :
sont des chaînes pour FlashPascal, ce que j'ai contourné en appelant les caractères de cette façon :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 const VIDE = '.'; BLANC = 'X'; NOIR = 'O';
Du coup le code n'est plus accepté par Delphi, qui attend un "array".
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 function AutreCouleur(const aPion: char): char; begin if aPion = BLANC then result := NOIR[1]
Autrement, j'ai un problème avec cette constante :
Pour FlashPascal, ça donne bien le nombre recherché (la limite inférieure du type integer),
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 const LOW_INT = $80000000;
mais avec Delphi c'est interprété comme un nombre supérieur. J'ai trouvé la solution suivante, qui passe aussi avec FlashPascal :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 program test_integer; {$FRAME_WIDTH 550} {$FRAME_HEIGHT 400} {$FRAME_RATE 12} {$BACKGROUND $FFFFFF} uses Flash8; var tf: TextField; begin tf := TextField.Create(_root, 'tf', 0, 0, 0, 550, 400); with tf do begin text := IntToStr($80000000); end; end.
Joyeuses Pâques !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 i := $80000000; i := integer($80000000);
Partager