new_get_new_handler
new_get_new_handler (std::get_new_handler)
<new> 헤더에 정의되어 있어요. 현재 설치된 new-handler를 돌려줘요. 널 포인터일 수 있어요. C++11부터 도입됐어요.
출처: cppreference
본문
std::new_handler get_new_handler() noexcept;
(C++11부터)
현재 설치된 new-handler를 돌려줘요. 널 포인터일 수 있어요.
이 함수는 스레드 안전해요. 이전의 std::set_new_handler 호출은 이후의 std::get_new_handler 호출과 동기화돼요. (std::memory_order 참고)
매개변수
없음.
반환값
현재 설치된 new-handler. 널 포인터 값일 수 있어요.
new-handler는 operator new가 메모리 할당에 실패했을 때 호출되는 함수 포인터예요. std::set_new_handler로 설정한 핸들러를 언제든 조회하고 싶을 때 get_new_handler를 써요.
std::new_handler h = std::get_new_handler();
if (h) { /* 핸들러 있음 */ }