Was ist RAII (Resource Acquisition Is Initialization) in C++ und wozu braucht man es?
Hallo Kollegen! Ich lerne C++ und höre ständig von RAII, kann aber das Konzept nicht ganz verstehen. Es wird als "Ressourcenbeschaffung ist Initialisierung" übersetzt, aber das klingt irgendwie verwirrend.\n\nIch habe ein konkretes Problem. Ich schreibe eine kleine Klasse für die Arbeit mit Dateien. Hier ist mein Code:\n\n```cpp\nclass FileHandler {\npublic:\n FileHandler(const char* filename) {\n file = fopen(filename, "r");\n if (!file) {\n std::cerr << "Datei konnte nicht geöffnet werden" << std::endl;\n }\n }\n \n void readData() {\n // lese Daten\n char buffer[100];\n fgets(buffer, 100, file);\n }\n \n ~FileHandler() {\n // hier vergesse ich, die Datei zu schließen\n }\n \nprivate:\n FILE* file;\n};\n```\n\nDas Problem ist, dass ich oft
Noch keine Antworten.
Anmelden um eine Antwort zu hinterlassen