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 buffer.str();
}
throw std::runtime_exception("file not found");
}
Dois-je appeler file.close () manuellement? Ifstream ne devrait-il pas utiliser RAII pour fermer des fichiers?
J'ai parcouru la plupart des questions ici et aucune ne traitait de cela.
Merci