Question pour les pros du C++

Boomaz
2021-03-02 19:05:53

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.

Boomaz
2021-03-02 19:06:56

uphttps://image.noelshack.com/fichiers/2020/43/5/1603447274-jesus-fondu-altieri.png

Hothosume
2021-03-02 19:07:27

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.

Boomaz
2021-03-02 19:10:31

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

MarinaDevyatava
2021-03-02 19:12:22

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

Boomaz
2021-03-02 19:13:07

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é

Jency14
2021-03-11 16:20:00



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 :(

Infos
Gestion du forum

contact@geevey.com

API disponible. Utilisez le paramètre "api" en GET, peu importe le contenu, sur une page du site.

Notes

    Partenaire: JVFlux
    Ce site n'est pas associé à Jeuxvideo.com ou Webedia. Nous utilisons seulement des archives publiques.
    Il est inutile de me spammer par e-mail pour supprimer un topic. Au contraire, en conséquence, je mettrais votre topic dans le bloc ci-dessous.
Non-assumage
    Personne n'a pas assumé de topic pour le moment.