Salut !

J'ai un problème pour écrire proprement un code.
J'ai une classe C qui utilise la structure S, mais je dois définir pour cette dernière ses constructeur et destructeur.

Je me demandais si j'avais le droit de faire par exemple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
struct S
{
    //champs, constructeur et destructeur
};
 
class C
{
    //champs
    S objet1, objet2;
};
afin que objet 1 et 2 soient automatiquement construits dans C par le constructeur que j'ai défini dans S ou si je dois dire que C hérite de S, mais dans ce cas, comment se passe les opérations de construction et destruction ?

Un autre problème est la destruction de S, je voudrais savoir si je peux utiliser la récurrence sur un destructeur, par exemple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
class S
{
    S* next;
    S()
    {
        next = 0;
    }
    ~S()
    {
        if (next != 0) delete(next);
        next = 0;
    }
};
Je sais que je n'ai pas le droit d'utiliser delete comme ça mais je voulais savoir si je pouvais l'écrire dans ce style, mais avec un autre mot peut-être, ou si je dois définir une fonction effacer récurrente que j'appellerai dans mon destructeur.

Merci de me répondre même si vois n'avez pas la solution aux 2 problèmes.