Кроссплатформенность оптимизаций

80
28 октября 2021, 06:50

Существуют ли оптимизации компилятора, которые могут привести к изменению наблюдаемого поведения программы? Если да, то какие?

Answer 1

Да существуют. Например Copy elision (а также, return value optimization), позволяют избавиться от вызова конструктора копирования, даже если это приводит к изменению наблюдаемого поведения.

Answer 2

Существует всего 2 оптимизации, описанные в стандарте, которые это могут: copy elision и allocation elision and extension.

READ ALSO
Непересекающиеся множества. Ошибка error C2064

Непересекающиеся множества. Ошибка error C2064

Пожалуйста, помогите мне, что я делаю не так?

104
Пара векторов или вектор пар

Пара векторов или вектор пар

Что будет производительней в общем случае: вектор пар или 2 вектора, где каждый содержит свой элемент?

106
C++ в Arduino. Преобразование вывода в строку

C++ в Arduino. Преобразование вывода в строку

Есть такое код функция hexDump выводит в порт сообщенияКак лучше сделать чтобы результат ее действия возвращался единой строкой

240
Изменение класса блока в зависимости от размеров экрана

Изменение класса блока в зависимости от размеров экрана

я имею блок с классом "preview_main_button" ( <div class="preview_main_button" id="ButtonOnPreview">Перейти ко всем статьям</div> ), но я хочу, чтобы на экранах разрешение...

101