Библиотека C/C++ разработчика | cpp, boost, qt
20.1K subscribers
1.82K photos
53 videos
16 files
4.02K links
Все самое полезное для плюсовика и сишника в одном канале.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/d6cd2932

Для обратной связи: @proglibrary_feeedback_bot

РКН: https://gosuslugi.ru/snet/67a5bac324c8ba6dcaa1ad17
Download Telegram
Forwarded from Библиотека программиста | программирование, кодинг, разработка
↗️ СберТех, Cloud.ru и Хабр запускают «Код без границ» — большую грантовую программу для поддержки российских опенсорс-проектов.

Авторы лучших проектов в четырёх номинациях (от AI до разработки для разработчиков) получат денежные гранты, облачные ресурсы от Cloud.ru и экспертную поддержку. Главная цель — помочь энтузиастам превратить свои идеи в полноценные продукты.

Основное условие для участия — репозиторий проекта должен быть размещён на платформе GitVerse. Заявки принимаются до 31 октября.

Подробности и правила участия 🔚
Please open Telegram to view this post
VIEW IN TELEGRAM
😁2
⚡️ Фича дня: [[likely]]/[[unlikely]] (C++20)

🔥 Проблема:

Компилятор не знает, какие ветки кода выполняются чаще, что влияет на производительность.

✏️ Решение:

Атрибуты помогают компилятору оптимизировать предсказание переходов.


До:

if (error_code != 0) {
handle_error(); // редкий случай
} else {
normal_processing(); // частый случай
}



После:

if (error_code != 0) [[unlikely]] {
handle_error(); // компилятор оптимизирует как редкий случай
} else [[likely]] {
normal_processing(); // оптимизируется как частый случай
}



Применение:

• Обработка ошибок в системном коде
• Оптимизация горячих путей в циклах
• Улучшение производительности критических секций


💡 Помогают ли вам атрибуты в оптимизации?


Библиотека C/C++ разработчика

#буст
Please open Telegram to view this post
VIEW IN TELEGRAM
10👍8🔥2