Quelle est la principale différence entre supprimer [] et supprimer ?
Quelle est la principale différence entre supprimer [] et supprimer ?

Vidéo: Quelle est la principale différence entre supprimer [] et supprimer ?

Vidéo: Quelle est la principale différence entre supprimer [] et supprimer ?
Vidéo: Lisons et prions le psaume 91 (Protection) - Prières inspirées - @Jeremy_Sourdril 2024, Avril
Anonim

La raison pour laquelle il existe des effacer et effacer opérateurs est que effacer appelle un destructeur alors que effacer doit rechercher la taille du tableau et appeler autant de destructeurs. Naturellement, l'utilisation de l'un là où l'autre est nécessaire peut poser des problèmes.

D'ailleurs, quelle est la différence entre free() et delete ?

Différences entre supprimer opérateur et libre() fonction effacer est un opérateur alors que libre() est une fonction de bibliothèque. supprimer gratuitement la mémoire allouée et le destructeur d'appels. Mais libre() de-allouer la mémoire mais n'appelle pas destructor. effacer est plus rapide que libre() car un opérateur est toujours plus rapide qu'une fonction.

Sachez également que fait delete en C ++ ? effacer () dans C ++ Supprimer est un opérateur qui est utilisé pour détruire les objets tableau et non tableau (pointeur) qui sommes créé par une nouvelle expression. Ce qui signifie Effacer l'opérateur désalloue la mémoire du tas. Pointeur vers l'objet est non détruit, valeur ou bloc mémoire pointé par le pointeur est détruit.

Ici, quelle est la différence entre supprimer et supprimer ?

Effacer et supprimer sont définis de manière assez similaire, mais le principal différence entre eux c'est ça effacer moyens effacer (c'est-à-dire rendu inexistant ou non récupérable), tandis que supprimer connote emporter et mettre de côté (mais maintenu en existence).

En quoi le destructeur est-il différent de l'opérateur de suppression ?

La première destructeur , appelé l'objet complet destructeur , effectue la destruction sans appeler effacer () sur l'objet. La deuxième destructeur , appelé le suppression du destructeur , appels effacer () après avoir détruit l'objet. Si un objet est détruit mais pas supprimé du tas, appelant opérateur supprimer est faux.

Conseillé: