일부 C++ 코드를 작성하는 동안 어떤 구조에서는 예외가 발생하지 않도록 보장하기 위해 end()
함수 호출이 필요합니다.파괴하기 전에 특정 함수가 호출되기 전에
Foo a(x,y)
~a
은 -> 특정 정말 나쁜 상황
Foo a(x,y)
a.end()
에서 던질 수 있습니다 -> 아마
가 궁금 예외를 던질하지
~a
보증 등을 던졌습니다 전자가 있으면 컴파일러에 의해이 제약 조건을 강제하기위한 합법적 인 방법 (Deconstruction 전에 호출되어야 함) 또는 최소한 경고를 출력 하시겠습니까?
인사와 감사
소멸자는 예외를 던져서는 안됩니다 ... – ForEveR
래퍼가 문제를 옮기지 않겠습니까? 래퍼 소멸자는 end를 호출하지만 끝은 throw 될 수 있으므로 동일한 문제가 발생합니다. 나는 try catch를 사용할 수 있지만 내 생각에는 매우 우아하지 않다. –
질문 : 누가이 예외를 처리 할 것인가? 누군가가 원한다면, 그에게 전화하게하십시오. – kassak