Namespaces
Variants

std::exception:: exception

From cppreference.net
Utilities library
(1)
exception ( ) throw ( ) ;
(C++11 이전)
exception ( ) noexcept ;
(C++11 이후)
(C++26 이후 constexpr)
(2)
exception ( const exception & other ) throw ( ) ;
(C++11 이전)
exception ( const exception & other ) noexcept ;
(C++11 이후)
(C++26 이후 constexpr)

새로운 예외 객체를 생성합니다.

1) 기본 생성자. what() 는 구현 정의 문자열을 반환합니다.
2) 복사 생성자. 내용을 other 의 내용으로 초기화합니다. * this other 모두가 동적 타입 std::exception 을 가지고 있다면 std:: strcmp ( what ( ) , other. what ( ) ) == 0 입니다.

매개변수

other - 내용을 할당하기 위한 또 다른 예외

참고 사항

std::exception 의 복사는 예외를 발생시키는 것이 허용되지 않기 때문에, 파생 클래스들(예: std::runtime_error )이 사용자 정의 진단 메시지를 관리해야 할 때, 일반적으로 copy-on-write 문자열로 구현됩니다.

Microsoft 구현에는 문자열을 취하는 비표준 생성자가 포함되어 있어 의미 있는 오류 메시지와 함께 인스턴스를 직접 throw할 수 있습니다. 가장 가까운 표준 대응물은 std::runtime_error 또는 std::logic_error 입니다.

결함 보고서

다음의 동작 변경 결함 보고서들은 이전에 발표된 C++ 표준에 소급 적용되었습니다.

DR 적용 대상 게시된 동작 올바른 동작
LWG 471 C++98 예외 복사본의 what() 에 대한 요구사항이 없음 추가됨