J'essaye de faire ça : throw (except("plip"));
Mais j'ai déclaré except non copiable (constructeur de copie privé). Pourquoi ? Parce que je souhaite l'intercepter par référence : catch (const except& exception)
Le compilateur n'est pas content, parce qu'apparemment il veut faire une recopie de l'objet.
Double question :
1. comment passer cet objet par référence, sans l'allouer sur le heap, ni provoquer une copie ?
2. je peux comprendre qu'il va vouloir dépiler le frame buffer de la fonction qui lance l'exception, et donc perdre l'objet lancé. Mais pourquoi peut-on alors intercepter un objet par référence ?
Il y a quelque chose qui m'échappe dans ce mécanisme...
Merci d'avance !
Et j'aime pas les exceptions avec new...
truc = Alloc(machin); if (!truc) { throw(new exception("plus de mémoire")); // AHAH même pas peur !!!!! }