Topic de Boomaz :

Question pour les pros du C++

  • 1

Est ce qu'il est possible de faire une instanciation simple d'un objet membre dont le constructeur doit recevoir des paramètres.

Je reformule :

Ma classe A contient un objet membre de classe B

Dans mon Classe A.h, l'objet de classe B est déclaré comme suit :

ClasseB classeB(paramètres);

Quelle est la syntaxe (si c'est possible) pour instancier mon Objet B, puisque je ne peux pas utiliser : objetB = new ObjetB , vu que je veux passer par une instanciation simple et non par une instanciation dynamique ?

Désolé si j'ai dis des énormités je débute ce langage.

Tu copie la classe A que tu colle dans la Classe B, tu supprime la classe A.H et la remplace par New ObjetB, puis tu instancie en dynamique la Classe B, pas besoin de l'instanciation simple c'est surcoter.

Derien.

Le 02 mars 2021 à 19:07:27 Hothosume a écrit :
Tu copie la classe A que tu colle dans la Classe B, tu supprime la classe A.H et la remplace par New ObjetB, puis tu instancie en dynamique la Classe B, pas besoin de l'instanciation simple c'est surcoter.

Derien.

D'accord je vois merci, je dois en conclure que l'idée de base n'est pas réalisable

Si tu veux mettre un objet comme attribut d'un autre objet, tu mets un pointeur et c'est tout.

Le 02 mars 2021 à 19:12:22 MarinaDevyatava a écrit :
Si tu veux mettre un objet comme attribut d'un autre objet, tu mets un pointeur et c'est tout.

très bien merci, c'était par pure curiosité



class B
{
public:
    int value{40};
};

class A
{
public:
    B b;
};

int main(int , char *[])
{
    A a;
    a.b.value += 2;

    return a.b.value != 42;
}


Aucun problème pour avoir un objet b d'une classe B attribut d'une classe A :(

  • 1

Données du topic

Auteur
Boomaz
Date de création
2 mars 2021 à 19:05:53
Nb. messages archivés
7
Nb. messages JVC
7
En ligne sur JvArchive 382