• # free ... ou pas ?

    Posté par . En réponse au message Effacer un pointeur fournit par une librairie externe. Évalué à 3.

    Est il autorisé d'éffacer un pointeur alloué ailleur ?

    c'est autorisé, mais déconseillé.
    La règle usuelle : c'est celui qui alloue qui désalloue

    Confier l'allocation et la désallocation à des layers différents du code complique énormément la maintenance (et donc favorise les bugs).

    Là, c'est à la lib de fournir les APIs qu'il faut pour (au choix):
    - désallouer la mémoire allouée,
    - laisser la charge de l'allocation/désallocation à l'appelant

    //Do something correspond à copier le pointeur dans un container civilisé (un vecteur) qui lui même est propagé par référence dans tout le code.

    possible que j'interprète mal, mais si tu copie des *pointeurs* dans ton vecteur, et que tu désalloues la mémoire pointée, forcément ...