История изменений
Исправление
MOPKOBKA,
(текущая версия)
:
в 99.9 процентов случаев компилятор будет ее компилировать отдельно от контекста использования.
В релизной сборке надо использовать lto, pgo.
а так ты просто заменил проверки на переполнение проверками на значение операндов. это даже длинней по коду, чем просто ловить переполнение.
Такая проверка может быть только в начале программы, а дальше компилятор сам догадывается какой возможный диапазон у значений. Суть именно в том, что бы компилятор узнал какие значения могут быть.
Обычно в хорошей программе есть проверка входных данных. С добавлением в С++ pre/post можно компилятору давать подсказки даже там, где в коде встречаются проблема остановки. И он будет вставлять проверки на переполнения только в малом количестве операций.
Исправление
MOPKOBKA,
:
в 99.9 процентов случаев компилятор будет ее компилировать отдельно от контекста использования.
В релизной сборке надо использовать lto, pgo.
а так ты просто заменил проверки на переполнение проверками на значение операндов. это даже длинней по коду, чем просто ловить переполнение.
Такая проверка может быть только в начале программы, а дальше компилятор сам догадывается какой возможный диапазон у значений. Суть именно в том, что бы компилятор узнал какие значения могут быть.
Обычно в хорошей программе есть проверка входных данных. С добавлением в С++ pre/post можно компилятору давать подсказки даже там, где в коде встречаются проблемы остановки. И он будет вставлять проверки на переполнения только в малом количестве операций.
Исходная версия
MOPKOBKA,
:
в 99.9 процентов случаев компилятор будет ее компилировать отдельно от контекста использования.
В релизной сборке надо использовать lto, pgo.
а так ты просто заменил проверки на переполнение проверками на значение операндов. это даже длинней по коду, чем просто ловить переполнение.
Такая проверка может быть только в начале программы, а дальше компилятор сам догадывается какой возможный диапазон у значений. Суть именно в том, что бы компилятор узнал какие значения могут быть.