Je n'ai pas l'impression de comprendre comment attraper l'exception du constructeur. Voici le code correspondant :
struct Thread {
rysq::cuda::Fock fock_;
template<class iterator>
Thread(const rysq::cuda::Centers ¢ers,
const iterator (&blocks)[4])
: fock_()
{
if (!fock_) throw;
}
};
Thread *ct;
try { ct = new Thread(centers_, blocks); }
catch(...) { return false; } // catch never happens,
L'instruction catch ne s'exécute donc pas et j'obtiens une exception non gérée. Qu'est-ce que j'ai fait de mal ? C'est du C++ pur avec g++.