Получение ресурса есть инициализация

Получение ресурса есть инициализация (англ. Resource Acquisition Is Initialization (RAII)) — программная идиома объектно-ориентированного программирования, смысл которой заключается в том, что с помощью тех или иных программных механизмов получение некоторого ресурса неразрывно совмещается с инициализацией, а освобождение — с уничтожением объекта.

Типичным (хотя и не единственным) способом реализации является организация получения доступа к ресурсу в конструкторе, а освобождения — в деструкторе соответствующего класса. Поскольку деструктор переменной во многих языках программирования вызывается при выходе её из области видимости в том числе в ситуациях, когда возникло исключение, то ресурс гарантированно освобождается при уничтожении этой переменной. В таких языках программирования, прежде всего в C++, это делает RAII ключевой концепцией для написания кода, безопасного при исключениях.

Источник: Википедия

а б в г д е ё ж з и й к л м н о п р с т у ф х ц ч ш щ э ю я