Bonjour,
{$H+} => "forces the compiler to use ansi-strings when no length is specified". Donc, quand cette directive est absente, on n'utilise pas les ansi-strings.
Pourquoi, sous Windows, le code suivant produit-il l'erreur : fopen.pas(832,43) Error: Incompatible type for arg no. 2: Got "Array[0..8] Of ShortString", expected "Open Array Of AnsiString"
...alors que celui ci-dessous passe sans problème...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 unit fOpen; {$mode objfpc} interface [...] var aRRayFilesName : array [0..8] of String;
... puisque par défaut sans {H+} les strings sont en UTF8 ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 unit fOpen; {$mode objfpc} interface [...] var aRRayFilesName : array [0..8] of UTF8String;
Cordialement. Gilles
Partager