Сайт использует сервис веб-аналитики Яндекс Метрика с помощью технологии «cookie». Пользуясь сайтом, вы даете согласие на использование данной технологии.
Эти фальшивые оптимизации не сделают ваш C/C++ быстрее
Мы рассмотрим некоторые оптимизации на уровне исходного кода, которые не влияют на скомпилированную сборку и, следовательно, не ускоряют выполнение вашего кода. 0:00 Введение 0:25 Обозреватель компилятора 1:50 Ассемблер цикла for 2:50 Инкремент префикса целого числа 3:20 Ручной битовый сдвиг 4:15 Ассемблер тернарного оператора 5:32 Заключение Обозреватель компилятора 1. Префиксный/постфиксный инкремент для целочисленных типов обычно не имеет значения. Однако, если эти операторы вызываются в пользовательских классах, вы, вероятно, будете вызывать совершенно разные функции. 2. Ручной битовый сдвиг. Используйте оператор битового сдвига в исходном коде только в том случае, если это улучшает читаемость в данном контексте, в противном случае просто оставьте это на усмотрение вашего компилятора. 3. Тернарный оператор обычно сходится к той же структуре сборки, что и ветвления if-else на большинстве архитектур процессоров. Для коротких выражений тернарный оператор более читабельный и лаконичный, чем операторы if.