1
클래스를 사용하여 예외를 throw하려고 시도하지만 예외가 발생해야하지만 예외가 발생합니다. 예외가 throw 될 때 처리기에 값을 전달하도록 클래스를 만들 수 있습니까?예외 클래스의 인수를 구문 분석하는 C++
클래스를 사용하여 예외를 throw하려고 시도하지만 예외가 발생해야하지만 예외가 발생합니다. 예외가 throw 될 때 처리기에 값을 전달하도록 클래스를 만들 수 있습니까?예외 클래스의 인수를 구문 분석하는 C++
고유 한 예외 클래스를 구현할 수 있습니다.
struct MyException
{
MyException(int v) : val(v) {};
int val;
};
...
try
{
throw MyException(5);
}
catch (const MyException& m)
{
assert(m.val == 5);
}
xx 이것은 내가 수행하려고 시도한 것입니다. – Melkon
참고 : 값으로 버리고 참조로 catch하는 것이 좋습니다. – Marius
@MariusBucur : 예외에 대해서는'std :: exception'에서 상속하는 것이 좋습니다. catch에 대한 catch는 실제로 catch 된 예외를 수정하려는 의도가 없으면 (일반적으로 rethrow) 참조로 확장 될 수 있습니다. –