2010-04-21 18 views

Répondre

2

Il y a deux inconvénients à l'utilisation d'objets au lieu d'enregistrements. Tout d'abord, chaque objet a une taille supérieure de 4 octets à celle d'un enregistrement contenant les mêmes données. (Ou 8 octets, à partir de D2009.)

Deuxièmement, un objet doit être créé et détruit; ce n'est pas "juste là" comme un disque. Mais à partir de l'autre question, il semble que vos dossiers doivent être référencés par des pointeurs de toute façon, donc ce n'est pas une grande différence. Vous devez encore allouer dynamiquement vos enregistrements et les libérer plus tard. Mais si vous utilisez un objet, vous gagnez beaucoup de flexibilité, en particulier la possibilité d'utiliser l'héritage et le polymorphisme. Cela vaut vraiment le coup de 4 octets supplémentaires.

+0

Étant donné que beaucoup de focus de VirtualStringTree va dans la vitesse, je suspecte que la partie "ne pas avoir à créer et détruire" est la plus grande raison. –