Maison > développement back-end > C++ > Utilisation de new en c++

Utilisation de new en c++

下次还敢
Libérer: 2024-04-26 16:39:15
original
1168 Les gens l'ont consulté

L'opérateur new en C++ est utilisé pour l'allocation dynamique de mémoire, en allouant une mémoire d'une taille spécifiée à partir de la mémoire tas et en renvoyant un pointeur vers la mémoire allouée. Les méthodes d'utilisation incluent : 1. Allouer de la mémoire : utilisez l'opérateur new pour allouer la taille de mémoire requise ; 2. Accéder à la mémoire allouée : accédez à la mémoire allouée via le pointeur renvoyé 3. Libérez la mémoire allouée : utilisez l'opérateur de suppression pour libérer ; n'alloue plus dynamiquement de la mémoire selon les besoins.

Utilisation de new en c++

Utilisation de new en C++

L'opérateur new est l'outil de base pour l'allocation dynamique de mémoire en C++. Il alloue de la mémoire de la taille spécifiée à partir de la mémoire tas et renvoie un pointeur vers la mémoire allouée.

Syntaxe

<code class="cpp">void* new(size_t size);</code>
Copier après la connexion

où :

  • size est la taille de la mémoire à allouer (en octets). size 是要分配的内存大小(以字节为单位)。
  • 返回值是一个指向分配内存的 void*
  • La valeur de retour est un pointeur void* vers la mémoire allouée.

Utilisation

Les étapes pour allouer de la mémoire à l'aide de new sont les suivantes :
  1. Allouer de la mémoire : utilisez l'opérateur new pour allouer de la mémoire de la taille requise. Par exemple :
  2. <code class="cpp">int* ptr = new int;</code>
    Copier après la connexion
  3. Accéder à la mémoire allouée : accédez à la mémoire allouée via le pointeur renvoyé. Par exemple :
  4. <code class="cpp">*ptr = 10;</code>
    Copier après la connexion
  5. Libérer la mémoire allouée : utilisez l'opérateur de suppression pour libérer la mémoire allouée dynamiquement qui n'est plus nécessaire. Par exemple : 
  6. <code class="cpp">delete ptr;</code>
    Copier après la connexion

Notes

  • new l'opérateur peut lancer l'exception std::bad_alloc si une mémoire suffisante ne peut pas être allouée.
  • Doit toujours utiliser l'opérateur delete pour libérer la mémoire allouée dynamiquement qui n'est plus nécessaire afin d'éviter les fuites de mémoire. L'opérateur
  • new ne peut être utilisé que pour allouer des blocs de mémoire bruts (non initialisés), l'utilisation de new pour initialiser un objet entraînera un comportement indéfini. L'opérateur
  • new renvoie toujours un pointeur void*, qui doit être transtypé pour être utilisé.
🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
c++
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal