struct QuitGuard {
struct guard_t {
~guard_t() {
Quit();
}
};
std::unique_ptr<guard_t> guard;
QuitGuard(const QuitGuard&) = delete;
QuitGuard& operator=(const QuitGuard& par) = delete;
QuitGuard() {
guard = std::make_unique<guard_t>();
}
QuitGuard(SDLQuitGuard&& par)
:guard(std::move(par.guard)) {}
QuitGuard& operator=(SDLQuitGuard&& par) noexcept {
guard = std::move(par.guard);
}
~QuitGuard() { }
};
'프로그램 > 새롭게 발견한 c++ 패턴' 카테고리의 다른 글
중첩 aggregate 시 버그 (3) | 2025.07.30 |
---|---|
이런 방법이? (3) | 2025.07.25 |
버그1 (0) | 2025.07.22 |
std::pair에 operator[]()을 추가해보자 (0) | 2025.07.20 |
2 (1) | 2025.07.09 |