Публикации по теме '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
В современных компьютерных системах параллельная обработка является распространенным методом, используемым для повышения производительности. Однако есть несколько проблем на пути к эффективному параллелизму, одна из которых — ложное совместное использование. Ложное совместное использование происходит, когда потоки, работающие на разных ядрах процессора, обращаются к разным переменным, которые используют одну и ту же строку кэша. Это может привести к ненужной аннулированию кеша,..