Questions marquées «raii»

257
jeter des exceptions d'un destructeur

La plupart des gens disent de ne jamais jeter d'exception d'un destructeur - cela entraîne un comportement indéfini. Stroustrup fait valoir que "le destructeur de vecteurs invoque explicitement le destructeur pour chaque élément. Cela implique que si un destructeur d'élément lance, la destruction...

201
Dois-je fermer manuellement un ifstream?

Dois-je appeler manuellement close()lorsque j'utilise un std::ifstream? Par exemple, dans le code: std::string readContentsOfFile(std::string fileName) { std::ifstream file(fileName.c_str()); if (file.good()) { std::stringstream buffer; buffer << file.rdbuf(); file.close(); return...