C++ 에는 RAII (Resource Acquisition Is Initialization)이라는 패턴이 있다. 리소스의 획득은 초기화다라는 뜻인데 보통 RAII Design Pattern이라고 한다. 예를 들자면, lock_gaurd class가 있다. class lock_guard {// class with destructor that unlocks mutexes public: explicit lock_guard(_Mutexes&... _Mtxes) : _MyMutexes(_Mtxes...) {// construct and lock _STD lock(_Mtxes...); } lock_guard(_Mutexes&... _Mtxes, adopt_lock_t) : _MyMutexes(_Mtxes...) ..