J'aide ma société avec un vieux code delphi 7.Valeur booléenne par défaut dans un tableau d'enregistrement - Delphi
Il existe un enregistrement déclaré au début qui est utilisé pour stocker toutes les données que nous voulons afficher.
Type
TOutput_Type = fiche
résultat: String;
resultoffset: Chaîne;
selected: booléen;
résultatcatégorie: nombre entier;
fin;
et ensuite un tableau de c'est déclaré
Sortie: tableau de TOutput_Type;
La longueur est définie au début sur une valeur élevée, car la longueur réelle est inconnue.
Ce tableau est utilisé partout mais, malheureusement, la valeur sélectionnée n'est pas toujours définie lors de l'utilisation.
Mon problème est que j'ajoute un résumé des données, mais parce que selected n'est pas défini, delphi semble lui donner un statut aléatoire vrai ou faux.
Existe-t-il un moyen de définir toutes les instances de selected comme vrai au début? On dirait une chose assez simple à faire, mais je ne suis pas un programmeur Delphi donc je ne sais pas si c'est possible? Je sais que je peux passer et ajouter: selected = true chaque fois qu'un nouveau record est fait, mais je voudrais le faire proprement au début si possible ....
Merci d'avance
Ce n'est pas complètement correct. SetLength zero-initialise la mémoire allouée qui rend les valeurs booléennes fausses par défaut. –
Merci pour votre suggestion; Je l'ai essayé et cela prend beaucoup de temps.Le problème est le tableau est mis en place avec une longueur de 0 (pour effacer le tableau), puis une longueur d'environ 57000 :) prend quelques minutes pour traiter ... – James
@VilleK: De l'aide de Delphi: "Pour une longue chaîne ou variable dynamique-array, SetLength réaffecte la chaîne ou le tableau référencé par S à la longueur donnée Les caractères existants dans la chaîne ou les éléments du tableau sont conservés, mais le contenu de l'espace nouvellement alloué n'est pas défini. " –