begin process at 2012 05 30 10:28:59
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

utilisation de delete sur des objets... ca marche comment ?


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

utilisation de delete sur des objets... ca marche comment ?

dimanche 5 mars 2006 à 12:15:53 | utilisation de delete sur des objets... ca marche comment ?

vincemail

    Bonjour, je voudrais savoir comment fonctionne delete sur des objets.. Par exemple j'ai un objet Tableau qui contient un membre *tableau (qui est bien sur un tableau de valeur). J'alloue dynamiquement de la mémoire pour ce tableau dans le constructeur de Tableau et je voudrais savoir si lorsque j'écris : delete tableau1 (où tableau1 est un objet Tableau) est ce que la mémoire allouée pour *tableau est aussi libérée ?

Sinon une deuxième question : est-il nécessaire d'utiliser delete pour un objet dont l'allocation de mémoire est statique ?

Et puis troisième et dernière question : lorsque j'écris : delete tableau1 celà génère une erreur car tableau1 n'est pas un pointeur. Il n'est donc pas possible d'utiliser delete sur un objet ?

Merci beaucoup.

Vincent
dimanche 5 mars 2006 à 12:23:47 | Re : utilisation de delete sur des objets... ca marche comment ?

luhtor

1) Si ton tableau est alloué statiquement, surtout pas de delete sur ton tableau. Faut faire un delete sur chaque élément de ton tableau si il contient des pointeurs initialisés avec new.
2) Faut surtout pas utilisé delete sur un objet statique. Ca n'a aucun intéret, et indéfinie.
3) Tu utilises delete sur un pointeur d'objet initialisé avec new.


dimanche 5 mars 2006 à 12:43:48 | Re : utilisation de delete sur des objets... ca marche comment ?

ctx_man

Réponse acceptée !
Salut ! Si ton objet qui aloue de la memoire alloue de la memoire dynamiquement, cet objet DOIS absolument desallouer cette memoire, c'est a ca que sert le destructeur ! Normalement le but de creer un objet c'est aussi de pouvoir encapsuler tes données donc normalement seul ton objet a le droit de delete ces données, donc c'est ton objet qui doit faire "delete[] tableau;" et tu dois t'assurer que ton destructeur delete toute donnees allouer par ton objet. De la meme facon qu'en C on ne free que ce qui a ete "malloc", "calloc" ou "realloc", en C++ on ne delete que ce qui a ete "new", les autres cas de figure c'est le system qui s'en charge.
dimanche 5 mars 2006 à 13:56:41 | Re : utilisation de delete sur des objets... ca marche comment ?

vincemail

    Ok je vois, merci beaucoup à vous deux, je vais utiliser les destructeurs pour libérer la mémoire allouée dynamiquement.


Cette discussion est classée dans : objet, tableau, delete, objets, tableau1


Répondre à ce message

Sujets en rapport avec ce message

pb avec delete c++ [ par djl ] je cree un tableau d'objets dynObjet** objets;objets = new Objet*[l];for(int i=0;icomment on le detruit?car je fait cafor(int i=0;idelete[] objets;e Tri de tableau d'objets... [ par dbiare ] Bonjour J’ai un petit souci en Visual C++6… Je détiens, après traitement, deux indices (i et j) d’un même tableau d’objet : m_oaBras[]. Je dois permut Tableau d'objets [ par nisaloncaje ] Bonjour, je suis débutant en c++ et j'aimerais savoir comment faire pour créer un tableau dynamique d'objets, c'est à dire un tableau d'objet donc je Quelle est la meilleur solution pour deplacer des objets independemment [ par adess00 ] Coucou Je fais un structure qui enregistre la position de chaque objets dans ma scene Et je voudrais savoir quelle est la meilleur methode Voici cell Objet ActiveX (COM) sous C++ (Visual C++ ou pas) [ par Raksmey ] Bonjour, Je viens à vous pour une question d'ordre général sur la création des objets ActiveX. Je me demandais si certans d'entre vous connaissez un Tableau d'objets [ par Adel85 ] Bonjour, J'ai un tableau d'objets et je veux accéder à une méthode de l'ième objet. Par exemple class A { double x; public : A() { x=0.; Tableau de double [ par LouisJean ] louisjean dev cpp       salut tous le monde! Je n'arrive pas a récupère le tableau de double que j'ai remplis dans mon objet class. utiliser des objets de classes références dans des vector ou des tableau x.... [ par khaled7400 ] svp ça urge , voilà le problème : j'ai une [color=blue]public ref class [/color]Vehicule {//blabla }; lorsque je fais : Vehicule^ tab[10]; le compila Utilistation d' INetComponentControl [ par guigui84210 ] Bonjour à tous, je suis en train d'essayer de programmer un soft qui peut désactiver/réactiver la couche TCP/IP de l'interface reseau. J'ai trouvé su probléme avec création de tableau d'objet [ par tibob51 ] Bonjour a tous,J'ai lu dans mon bouquin de c++ (j'apprend tout seul par passion) que l'onpeut créer un tableau d'objetexemple:class A{..A(int i);//con


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,328 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales