[à propos de calloc]
It also does an overflow check for you, because why not.
Faux, c'est spécifique aux implémentations. Rien dans la norme ne le garantit et c'est une mauvaise idée d'utiliser calloc en pensant éviter un integer-overflow.
[à propos de realloc]
For starters, it can’t be used with C++ objects that might want to invoke a move constructor. It also doesn’t work with C objects that have self-referential pointers such as a buffer containing a circular linked list.
Et en même temps, en C++ tu fais pas de realloc. À part dans de rares cas où tu as besoin de faire du placement-new, tu n'es pas censé jouer avec la mémoire de manière aussi basse.
Si tu as peur d'avoir des pointeurs invalides à cause d'un déplacement de mémoire, tu fais pas de realloc ou tu fais des pointeurs de pointeurs. Blamer realloc pour ça n'est pas pertinent. La meilleure utilisation de realloc est probablement de manipuler une donnée unique ou un tableau de types primitifs. Celui qui utilise realloc pour reallouer des structures imbriquées se tire une balle dans le pied.
Pour moi cet article n'a pas d'intérêt et répond à des problèmes inexistants.
# Peu pertinent
Posté par David Demelier (site web personnel) . En réponse au lien malloc() and free() are a bad API. Évalué à 10. Dernière modification le 01 septembre 2022 à 17:07.
Faux, c'est spécifique aux implémentations. Rien dans la norme ne le garantit et c'est une mauvaise idée d'utiliser
callocen pensant éviter un integer-overflow.Et en même temps, en C++ tu fais pas de
realloc. À part dans de rares cas où tu as besoin de faire du placement-new, tu n'es pas censé jouer avec la mémoire de manière aussi basse.Si tu as peur d'avoir des pointeurs invalides à cause d'un déplacement de mémoire, tu fais pas de
reallocou tu fais des pointeurs de pointeurs. Blamerreallocpour ça n'est pas pertinent. La meilleure utilisation dereallocest probablement de manipuler une donnée unique ou un tableau de types primitifs. Celui qui utilisereallocpour reallouer des structures imbriquées se tire une balle dans le pied.Pour moi cet article n'a pas d'intérêt et répond à des problèmes inexistants.
AI is a mental disorder