Публикации по теме 'cpp'
Ежедневный бит(е) C++ | если констеваль {}
Ежедневный бит (е) C ++ # 38, вариант C ++ 23 if: if consteval {}
В C++23 добавлен оператор if consteval {} с возможностью проверки, является ли код вычисляемым константой.
Это полезно, чтобы различать альтернативные реализации или учитывать побочные эффекты во время выполнения, такие как мониторинг.
constexpr int add(int a, int b) {
if consteval {
// consteval branch that can only use
// constant expression compatible code
return a + b;
} else {..
Библиотека форматирования С++ 20: символы и строки части 6
В четвертой части и пятой части серии руководств по библиотеке форматирования C++20 основное внимание уделялось по форматированию чисел. В этой части серии статей основное внимание будет уделено тому, как можно форматировать символы и строки с помощью новой библиотеки форматирования.
Форматирование строк с помощью библиотеки форматирования практически не вызывает затруднений. В основном все правила спецификаторов формата, обсуждаемые с базовыми арифметическими типами, за..
Самоанализ и отражение в CPP
В программировании самоанализ и рефлексия — это концепции, которые включают в себя изучение и изменение структуры и поведения программных компонентов во время выполнения.
Самоанализ
Самоанализ — это способность программы исследовать свою собственную структуру и свойства. Благодаря самоанализу программа может динамически получать доступ к информации о себе, такой как тип объекта, поддерживаемые им методы и свойства, которыми он обладает. Это позволяет программе адаптировать свое..
Честный обзор PVS-Studio от рядового программиста
PVS-Studio — это программа, которая ищет ошибки в исходном коде проектов C++ и C#, которые компилятор не видит, но которые почти наверняка являются ошибками программирования.
Примечание. Эта статья изначально была опубликована на русском языке в блоге blog.harrix.org. Оригинальная и переведенная версии размещены на нашем сайте с разрешения автора.
Введение
Ко мне обратились ребята из команды PVS-Studio с предложением о сотрудничестве. Я много читал об их продукте на страницах..
Сообщество PVS-Studio и GitHub: да начнется дружба
Некоторое время назад было решено сделать статический анализатор кода PVS-Studio бесплатным для определенных категорий разработчиков: студентов для учебных целей, индивидуальных разработчиков и коллективов энтузиастов. Постепенно количество бесплатных пользователей увеличивается, но мы решили напомнить об этой возможности, потому что некоторые разработчики могли пропустить эту новость.
Итак, все началось со статьи: Как пользоваться PVS-Studio бесплатно .
Первая реакция пользователей..
Раскрытие возможностей лямбда-выражений в C++
Лямбда-выражения — это анонимные функции ( функции без имени ), которые можно определить и использовать в C++. Они обеспечивают удобный способ передачи небольших фрагментов кода в качестве аргументов другим функциям или определения функции на месте без необходимости создания именованной функции.
Лямбда-выражения обеспечивают гибкий и лаконичный способ написания функциональных объектов на C++ и широко используются в современном программировании на C++.
Лямбды определяются с..
Ложное совместное использование в многопоточном программировании: анализ профилирования с помощью Perf
В современных компьютерных системах параллельная обработка является распространенным методом, используемым для повышения производительности. Однако есть несколько проблем на пути к эффективному параллелизму, одна из которых — ложное совместное использование.
Ложное совместное использование происходит, когда потоки, работающие на разных ядрах процессора, обращаются к разным переменным, которые используют одну и ту же строку кэша. Это может привести к ненужной аннулированию кеша,..