Bonjour,
j'ai cru comprendre que tous les items d'un packed array étaient rangés à la suite en mémoire.
Quelqu'un peut il me le confirmer (ou infirmer) ?
Bonjour,
j'ai cru comprendre que tous les items d'un packed array étaient rangés à la suite en mémoire.
Quelqu'un peut il me le confirmer (ou infirmer) ?
oui, un packed array, donc un tableau "tassé", est censé avoir ses infos bout à bout, sans essayer de les aligner sur les frontières des octets.
C'est généralement beaucoup moins efficace en terme de rapidité et sauf tableau gigantesque le gain en RAM ne vaut que rarement la chandelle.
Les packed records c'est pareil d'ailleurs.
merci pour la réponse.
ce n'est pas franchement pour le gain mémoire mais pour le passer en paramètre via pointer et le l'utiliser via un autre pointeur sous une autre forme, donc pour être sur que les octets vont être au bon endroit.
l'intérêt des packed record peut être aussi de calquer une structure d'en-tête, à lire par stream, plutôt que de faire x lectures successives (avec le record, il y a décalage si des champs sont de taille impaire)
Partager