Domande taggate «raii»



16
gettando eccezioni da un distruttore
La maggior parte delle persone afferma di non gettare mai un'eccezione da un distruttore: farlo comporta un comportamento indefinito. Stroustrup sottolinea che "il distruttore vettoriale richiama esplicitamente il distruttore per ogni elemento. Ciò implica che se un distruttore elemento lancia, la distruzione vettoriale non riesce ... Non c'è davvero un …


5
Devo chiudere manualmente un ifstream?
Devo chiamare manualmente close()quando utilizzo un std::ifstream? Ad esempio, nel codice: 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"); } Devo chiamare file.close()manualmente? Non dovresti ifstreamusare RAII per chiudere i file?
201 c++  ifstream  raii 




Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.