Обертка над стандартными типами данных(char, int, double и т.д.)

Nikola_g
Nikola_g

Суть проблемы заключается в следующим. В компании, в которой я работаю в основном решаются математические задачи и часто при их решении возникают непредвиденные ситуации. К ним относятся деления на ноль, результат вычисления равен inf или nan, бывает, что происходит переполнения. Так же по незнанию программисты берут на строгое равенство переменные с плавающий точкой. Для решении данной проблемы были написаны несколько классов (ссылка на репозитарий https://github.com/GhostPastR/TestMyLibs/tree/master/libs/system/NType). Возможно ли внести в стандартную библиотеку что-нибудь аналогичное. В C# и Java стандартные типы оформлены виде классов со своими методами.

 

-2
рейтинг
2 комментария
alekseyvladimirovich

Таких классов в C++ нет и это правильно. Все непредвиденные ситуации вы всё равно не отловите, а скорость вычислений резко упадёт.  Да и непонятно, какую ситуацию считать непредвиденной. Вычисление 1e30+1 - это непредвиденная ситуация или так должно быть? А 1e30+1-1e30? Такие классы дадут ложную иллюзию защищённости, не решая серьёзных проблем

alekseyvladimirovich
Nikola_g

alekseyvladimirovich, Кто вам сказал заменить? Где это написано? Там сказано добавить, кто вам запрешает испозовать стандартные типы? Видно вы не работали с математическими задачами, которые мы встречаемся каждый день. С помощью такой обёртки были отловлены многи ошибки с не корректным вычислением. 

Nikola_g
Другие идеи
Группа создана, чтобы собирать предложения к стандарту C++, организовывать их внутренние обсуждения, помогать готовить их для отправки в комитет и защищать на общих собраниях в рабочей группе по С++ Международной организации по стандартизации (ISO).
Все предложения