9Fermer11
FarewellLe 19/11/2011 à 18:59
Bon, j'ai donc dérivé std::exception comme ceci :
class Except: public std::exception
{
	public:
		Except (const char* Str) throw ();
		Except operator = (Except const &);
		Except (Except const &);

		const char* what () const throw ();

	private:

		const char* str;
};

Comme vous pouvez voir, j'ai redéclaré les constructeurs de copie et d'affectation qui sont déjà définis dans la classe mère pour satisfaire aux exigences de Monsieur Meyers (switch -Weffc), qui demande de redéfinir ces constructeurs quand un membre de la classe est un pointeur. C'est donc ok de ce côté-là.

Par contre, je ne les ai pas implémentés, ces constructeurs. C'est grave ? Au final, il va faire quoi s'il veut copier un objet ? Utiliser le constructeur de recopie de std::exception ? Ai-je obligation d'implémenter ça, même si les corps de ces constructeurs seraient vides ?

Bref, je ne comprends pas les tenants et aboutissants de l'implémentation de ces constructeurs, merci d'avance de m'éclairer.