Partage
  • Partager sur Facebook
  • Partager sur Twitter

Allocation de mémoire

    21 mars 2008 à 23:46:10

    Bonsoir,

    Après plusieurs re-lectures des chapitres portant sur l'allocation dynamique je n'arrive toujours pas à comprendre quand l'utiliser et à quoi elle sert réellement (new et delete)! Si quelqu'un pouvait m'éclairer sur la question svp !

    Merci d'avance ;)
    • Partager sur Facebook
    • Partager sur Twitter
      22 mars 2008 à 1:40:05

      Salut,

      imaginons que tu veuilles demander à l'utilisateur d'entrer un certain nombre de chiffres que tu veux stocker dans un tableau. Tu ne connais pas la dimension du tableau à l'avance !

      Donc, tu déclares ton pointeur au début du programme :
      1. int *tableau = NULL;

      Tu demandes le nombre de chiffres, et tu alloues :
      1. tableau = new int[taille];

      Sans oublier de libérer :
      1. delete[] tableau;


      ;)
      • Partager sur Facebook
      • Partager sur Twitter
        22 mars 2008 à 1:59:05

        En clair, la taille s'adapte automatique pour l'utilisation de la variable et on l'a détruit une fois son utilisation terminée afin de ne pas gâcher de mémoire c'est ca?
        • Partager sur Facebook
        • Partager sur Twitter
        Anonyme
          22 mars 2008 à 8:42:11

          new permet aussi une appel automatique au constructeur lors de la construction d'un objet.
          • Partager sur Facebook
          • Partager sur Twitter
            22 mars 2008 à 16:27:27

            on peut imaginer que les pièces d'un hôtel sont des cases mémoires,je veux reserver 10 pièces, je colle un ticket "Reservé" sur chaque porte : int *t = new int [10];
            lorsque je termine j'enleve les tickets : delecte [] t;
            • Partager sur Facebook
            • Partager sur Twitter

            Allocation de mémoire

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown