c'est surtout que Windows 7 64bits ne sait pas executer des applications DOS
mais en effet j'ai utilisé Delphi 6 et non XE2 avec ces chaînes Unicode.
oui enfin le but est surtout d'économiser la pileJ'ai bien compris l'idée de ne restaurer que les valeurs qui ont changé. C'est même comme ça que je faisais dans mes premiers programmes, mais j'y ai renoncé. S'il n'y avait que des mouvements ordinaires, cette solution irait très bien, mais le coup simulé peut être aussi : un pion se changeant en dame, un roque, une prise en passant. Il faut donc détecter ces coups spéciaux, et enregistrer les valeurs qui ont changé mais qui ne sont pas les mêmes dans chaque cas. C'est très faisable, mais c'est un peu casse-tête et ça complique le code. Ce sera peut-être plus rapide à l'exécution, mais je me pose la question, vu les tests qu'il faut ajouter.
![]()
mais il y a une autre astuce possible:
avec cela tu n'as qu'un pointeur dans la pile, le Tablier est alloué dans le tas (mémoire globale) qui est moins limitée que la pile.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 procedure test; var fictif: ^TTablier; begin New(fictif); ... fictif^[x,y] := ... ... dispose(fictif); end;
Partager