Бросаем исключение в одном модуле, перехватываем в другом. В другом модуле с исключением ничего не делаем. Могут ли быть в таком случае проблемы? Вроде бы проблем быть не должно.
// в одном модуле
void f()
{
try
{
//... Где-то тут выбросилось искл.
}
catch (MyException const& e)
{
//... Перехватили, обработали и перебросили дальше
throw;
}
}
// в другом модуле
try
{
// вызываем ф-цию из первого модуля
f();
}
catch (MyException const&)
{
// перехватываем исключение из первого модуля
state = eNoCalc;
}