gestion d'exception : cas particulier
Bonjour à tous.
Je rencontre un petit problème : j'ai une classe A qui peut lever une exception lors de sa construction ; et une classe B contenant un objet de classe A en temps que membre privé et static.
Comment initialiser ledit membre en gérant une éventuelle exception ? Détail important : je ne peux pas instancier à la main dans le main (jeu de mot \o/) B::a pour diverses raisons ; il est nécessaire que ce soit B::B(int) qui soit chargé du travail. Il m'est possible de modifier B pour que son member privé static soit non plus un A mais un pointeur vers un A (A* ... autre jeu de mot \o/).
Petit récapitulaitif :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| class A
{
public:
A() throw(int);
~A();
};
class B
{
public:
B(int plop);
~B();
private:
static A a;
};
A B::a(42) // pas possible de mettre de try catch ici |
Merci de votre aide.