probleme de comprehension au niveau de pointeur
salut,
il s'agit de la définition de deux constructeurs
j'arrive pas a comprendre pourquoi allouer de l'espace mémoire alors que nous pouvons utiliser la notion d'address
en vérité j'aimerai savoir qu'est ce qui différencie ses deux constructeur ci dessous
NB:largeur et hauteur sont des pointeurs
1-cas: Rectangle::Rectangle(double l,double h):largeur(new double(l)),hauteur(new double(h))
2-cas: Rectangle::Rectangle(double l,double h):largeur(&l),hauteur(&h)
merci d'avance
probleme de comprenhension sur les class et allocation dynamique
salut,
j'aimerai aussi que vous m'aider a ce niveau avec le code ci dessous
Code:
1 2 3
| //declaration
vector<Vehicule*> listeVehicules;
listeVehicules.push_back(new Voiture(15000, 5)); |
j'aimerai savoir s'il est possible d'utiliser listeVehicules.push_back(& v) après avoir déclarer Voiture v(15000,5) Voiture etant une classe; cet a dire ecrire
Code:
1 2 3 4 5 6
| int main()
{
vector<Vehicule*>listeVehicules;
Voiture v(15000,5);
listeVehicules.push_back(&v);
} |
merci d'avance
pointeur et allocation dynamique
Citation:
Envoyé par
Bousk
Le premier crée des pointeurs pour y stocker les valeurs, le second pointe vers les variables passées en paramètres.
Et vu que les variables sont temporaires, il pointera vite vers de la mémoire pourrie.
Dans les deux cas, avoir un pointeur comme membre ici est pas loin du top 1 de la mauvaise idée.
il pointera vers la memoire pourrie sachant que dans le destructeur on a largeur=nullptr; hauteur=nullptr;????