Bon, le titre pas très clair et je vous prie de m'en excuser. Je suis nouveau en programmation en C++,en particulier pour tout ce qui concerne la programmation objet.
Je veux faire la chose suivante, je me demande si c'est sensé :
//header class MaClasse { int *entier; MaClasse()} MaClasse::MaClasse() { int *pointeur; pointeur = new int[14]; for (i=0;i>14;i++) pointeur[i]=i; entier = pointeur; } //main { MaClasse MonObjet(); } |
Donc, ce que je fais, c'est que je construis un tableau dynamique d'entiers à la taille qui me convient dans le constructeur de ma classe, puis j'assigne le pointeur contenu dans l'objet que j'ai créé à la valeur du pointeur ainsi initialisé.
Ce que je me demande, c'est si le tableau tout entier reste réservé en mémoire à "MonObjet.entier", ou si en sortant de la fonction où l'on a réservé cet emplacement mémoire à travers la fonction new(), puisque la mémoire était réservée pour "pointeur", elle ne l'est plus pour mon objet... ?
Message édité par hephaestos le 16-03-2008 à 18:17:32