Я ищу функцию/код, которая возвращает текущий объект исключения. Другими словами, объект исключения, который представляет исключение, обрабатываемое в данный момент (блоком catch).
Например:
try
{
// throws an exception
}
catch (const std::exception& Exc)
{
DoSomething();
}
void DoSomething() {
// How to get the "Exc" here?
}
Другими словами, мне нужен C++-эквивалент функции Delphi ExceptObject.
Приведенный выше код — это всего лишь пример. Реальный код выглядит примерно так:
catch (...)
{
A3rdPartyCode();
}
void A3rdPartyCode() {
MyCode();
}
void MyCode() {
// Does not work, returns NULL:
TObject* = ExceptObject();
// ???
// Need to know the current exception, if present
}
Подробнее здесь: https://stackoverflow.com/questions/786 ... r-exceptob