Паттерн взят в ковычки не зря, так как это не паттерн, но все же шабланная вещь ... Есть логика кода Код (Text): CaptureResource(); // // Не какая логика с потенциалом выкинуть исключения. // ReleaseResource(); На Си под Винь я бы писал так Код (Text): __try { CaptureResource(); // // Не какая логика с потенциалом выкинуть исключения. // } __finally { ReleaseResource(); } На ЦПП можно так Код (Text): try { CaptureResource(); // // Не какая логика с потенциалом выкинуть исключения. // } catch(...) { ReleaseResource(); throw; } ReleaseResource(); Это через ж***. Поэтому идея обернуть в класс Код (Text): do { ClassAutoCaptureResource captureObject(); // // Не какая логика с потенциалом выкинуть исключения. // } while(false); Как называет класс такого рода ? обобщенно разумеется... ( Часто используется для Мьютексов или критических секциях ну и прочей лабуде )