Est-ce que catch (…) attrape toutes les exceptions?

Je vois que catch (…) n’attrape pas toutes les exceptions et une pop agaçante est lancée sur l’utilisateur final.

size_t pos; char *ptrDir="c:\\test"; std::ssortingng strDir = strDir.erase(strlen(ptrDir) - 1); pos = strDir.find("Test"); try { std::ssortingng strPat = strDir.substr(pos); } catch(...) { std::cout<<"I am hiding Exception"; } 

J’utilise Visual Studio 2005, Windows XP.

Remarque: le code est intentionnel pour générer des exceptions. C’est un code de test

Votre code générera probablement des violations d’access qui, dans VC ++, ne seront pas des exceptions standard. Elles font partie des exceptions structurées, que vous pouvez également intercepter mais nécessitera un mécanisme différent: