У меня есть several-thousand-line приложение, которое полагается на SIGFPE (обработанный указателем функции, переданным сигналу ()) для изменения состояния, и выполните код правильно, когда определенные условия с плавающей точкой происходят. Однако под C++ / CLI в режиме автоматического управления, _control87 генерирует Систему. ArithmeticException, выполняющийся в статическом lib, записанном в C. _fpreset и _control87 не поддерживаются.
Как я заставляю классическую, неуправляемую операцию SIGFPE работать в C++ / приложение CLI? Количество местоположений, где материал с плавающей точкой происходит в моем приложении, могло быть огромное, и я не полностью понимаю все численные методы несколько записанных годы назад другими программистами.
Я хочу, чтобы олдскульная обработка исключений работала над делением с плавающей точкой на нуль, не значением INF. Платформа вызывает стиль, не работает, и #pragma, управляемый (прочь), не добивается цели также.
Какие опции я имею?