Не оптимизирующие компилятор части кода в C ++ - PullRequest
2 голосов
/ 25 февраля 2011

Есть ли способ сказать компилятору не оптимизировать отдельные части кода?Я знаю, что вы можете сказать компилятору не оптимизировать определенные переменные, используя volatile, но как насчет целых кусков кода?

1 Ответ

8 голосов
/ 25 февраля 2011

В большинстве случаев да, но точный метод зависит от вашего конкретного компилятора.

Обычно это будет что-то вроде:

#pragma optimize(off)

Все, что связано с оптимизатором, полностью выходит за рамки стандарта. Единственная роль, которую играет стандарт, заключается в предписании поведения, но компилятор может выполнить любую оптимизацию, которая не нарушает требуемое поведение или не выполняет вообще.

Документация для g ++:

Документация для MS Visual C ++ (выберите версию, как только вы туда попадете):

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...