Библиотека C/C++ разработчика
Ir al canal en Telegram
Полезные материалы по всему, что может быть полезно плюсовику/сишнику. По всем вопросам @evgenycarter
Mostrar más7 323
Suscriptores
+224 horas
+87 días
+1430 días
Archivo de publicaciones
Repost from Книги для программистов C/C++
Data Parallel C++: Programming Accelerated Systems Using C++ and SYCL, 2nd Edition
Автор: Ben Ashbaugh (2023)
В этой книге рассказывается о параллельном программировании данных с использованием языка C++ и SYCL, а также обо всем, что необходимо для программирования ускоренных систем. Книга начинается с представления параллелизма данных и фундаментальных тем для эффективного использования SYCL. В последующих главах рассматриваются расширенные темы, включая обработку ошибок, программирование с учетом аппаратных особенностей, связь и синхронизацию, а также модели памяти.
Весь исходный код примеров, используемых в книге, находится в свободном доступе на GitHub. Примеры написаны на современном языке SYCL и регулярно обновляются для обеспечения совместимости с различными компиляторами.
👉 @cpp_knigi
Знакомство с constexpr unique_ptr (С++23)
https://andreasfertig.blog/2023/10/using-cpp23s-constexpr-unique_ptr/
#cpp #programming
👉 @cpp_lib
Бесплатный С++ митап в Москве и онлайн. Константин Владимиров, Илья Шишков и инженеры YADRO
Встреча пройдет 21 ноября в Москве недалеко от станции «Улица 1905 года», а участники из других городов смогут задать вопросы спикерам в чате трансляции на YouTube.
В программе:
• Доклад «Как работает (и не работает) lifetime extension» от Елены Степановой, техлида в команде телекома (YADRO)
• Доклад «C++ 23 глазами практикующего системного программиста» от Ильи Казакова, разработчик в команде систем хранения данных (YADRO)
• Дискуссия о технических собеседованиях с Константином Владимировым (Syntacore), Ильей Шишковым (ex-Яндекс) и Еленой Степанова.
Регистрация обязательна — записывайтесь по ссылке.
Три очень практичные фичи C++23
C++23 — это текущая рабочая версия стандарта C++. На момент написания статьи туда пока не было включено ни одной крупной фичи, но ряд небольших нововведений, а также множество отчетов о дефектах уже утверждены в стандарте. Вы можете посмотреть текущий статус и поддержку компиляторами новых фич здесь. Многие из этих нововведений представляют из себя небольшие улучшения и вещи, которыми вы, вероятно, не будете пользоваться на регулярной основе. Однако сегодня я хочу обратить ваше внимание на три новые фичи C++23, которые, на мой взгляд, выделяются на фоне остальных именно тем, насколько часто они будут встречаться в нашем коде.
https://mariusbancila.ro/blog/2022/01/17/three-cpp23-features-for-common-use/
#cpp #programming
👉 @cpp_lib
🔫 Создайте свой первый шутер с нуля и ворвитесь в геймдев
👉 На бесплатном открытом уроке «Создаём простейший шутер от третьего лица на Unreal Engine 5» от OTUS.
За 2 эфира вы сможете создать свою первую игру для портфолио, начнём уже 8 ноября в 20:00 мск:
- создадим проект и игровую сцену;
- импортируем игровые ассеты и анимации для нашего шутера;
- подготовим UI: уровень здоровья и боеприпасов.
📌 Занятие будет приурочено к старту курса «Unreal Engine Game Developer. Basic». После урока вы сможете продолжить обучение на специальных условиях и получить видеокурс по программированию на C++ в подарок!
👉 Для бесплатного участия и получения записи регистрируйтесь прямо сейчас: https://vk.cc/cs7aS0
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Советы по рефакторингу C++
Когда-то давно, в мире, где Си++ был молод, а глобальная кодовая база была невелика, можно было легко прочитать и просмотреть чужой код, затем принять его и развивать проект до бесконечности. Но, конечно, такого, скорее всего, не было, но интересно представить себе время, когда программы были короткими и простыми, но при этом законченными настолько, что функциональность не требовала расширения. В таком мире рефакторинг кода, возможно, и не требовался. Однако если кодовая база нуждается в проверке или обновлении, будь то расширение, улучшение в соответствии с изменениями в языке или даже просто проверка эффективности, то рефакторинг кода становится скорее необходимостью, чем просто приятным занятием.
Идея рефакторинга заключается в том, чтобы внести улучшения в существующий код, не меняя того, что он делает. По сути, улучшается дизайн и общая читаемость, а функциональность остается нетронутой. Преимущества рефакторинга кода заключаются в повышении эффективности, читаемости, сопровождаемости и расширяемости. А также синтаксическое и семантическое снижение сложности кода.
https://www.incredibuild.com/blog/tips-for-c-refactoring
#cpp #programming
👉 @cpp_lib
C++23's zip_view
https://www.youtube.com/watch?v=MVXGdwREo_E
#cpp #programming
👉 @cpp_lib
⚡️ Узнайте о фреймворке QT то, чего не знают другие, и станьте более востребованным специалистом
Начните с бесплатного открытого урока «StateMachine в Qt» от OTUS.
На эфире мы познакомимся с концепцией машины состояний, а также узнаем о том, как она реализована в Qt и как можно эффективно ее использовать.
📢📢 Занятие пройдёт 2 ноября в 19:00 мск и будет приурочено к старту курса «Разработка прикладного ПО на Qt и ОС Аврора».
🎫 После урока вы сможете продолжить обучение в рассрочку на комфортных условиях.
➡️ Регистрируйтесь на мероприятие прямо сейчас: https://vk.cc/cs5gdQ
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ruПишем свой QTableView с нуля
Итак жил был фреймворк Qt и последние 10 лет ничего почти в нем не менялось. И захотел один чел написать свой QTableView с нужным ему функционалом, а именно захотелось ему выводить ячейки в несколько рядов в одной строке. Ещё ему хотелось растягивать одну из ячеек по ширине двух других и т.д. (ну как в 1С например).
Искал, искал чел готовый пример в интернете и не находил. И вот однажды подумал он посмотреть как сделан внутри сам QTableView и стало плохо ему от количества строк кода, не одна тысяча там.
https://habr.com/ru/articles/761530/
#cpp #programming
👉 @cpp_lib
⚙️ Курс «Введение в реверс-инжиниринг»
Изучите тайны программного обеспечения и познакомьтесь с обратной разработкой на курсе от Академии Кодебай.
Всего за 6 месяцев вы научитесь анализировать исполняемые файлы, понимать их структуру и исследовать вредоносное ПО. Главной темой курса является реверс-инжиниринг программ, написанных на языке ассемблера и Си.
Курс подойдет как новичкам, знающим основы программирования, так и практикующим специалистам.
📆 Старт курса - 6 ноября
🔝 Преимущества: личная поддержка от куратора, более 120 заданий в практической лаборатории, закрытый чат единомышленников и сертификат при успешной сдаче экзамена.
ℹ️ Узнать подробнее о курсе
Реклама. ООО "АКАДЕМИЯ КОДЕБАЙ". ИНН 9706020333. erid: LjN8K2eTZ
Библиотека Ranges в C++20
Благодаря библиотеке ranges работа со стандартной библиотекой шаблонов (STL) стала намного удобнее и мощнее. Прежде всего, алгоритмы библиотеки ranges, могут работать непосредственно на контейнере и могут быть композитными. Кроме того, в библиотеке ranges сделано несколько уникальных конструктивных решений, о которых вы должны знать.
https://www.modernescpp.com/index.php/the-ranges-library-in-c20-design-choices/
#cpp #programming
👉 @cpp_lib
Не так страшна многопоточность, как ее малюют!
🫵 Убедитесь в этом на бесплатном вебинаре «Многопоточность без страха» от OTUS.
Вебинар пройдет 8 ноября в 20:00 по мск.
Вебинар является бесплатной частью полноценного онлайн-курса "Rust Developer. Professional". Курс доступен в рассрочку.
✔️ На вебинаре мы разберём:
- Что такое многопоточность и зачем она нужна
- Какие проблемы возникают при создании многопоточных приложений
- Действия, которые позволяют обеспечить безопасность и консистентность данных в многопоточном приложении
- Как Rust решает эти проблемы на уровне системы типов
- Общие Computer Science концепции и приёмы, которые будут полезны любому разработчику
➡️ Регистрация на вебинар по ссылке: https://vk.cc/cs3V7N
💥 Бонусом после вебинара вы сможете поступить на полноценный онлайн-курс "Rust Developer. Professional" по специальной цене!
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Лекции С++ продвинутый поток ФПМИ 2023-24
Лекция 1. Введение в язык C++. Основные типы и операции над ними
Лекция 2. Основные команды в терминале. Компиляция программ
Лекция 3. Объявления и определения, области видимости, пространства имен
Лекция 4. Выражения и операторы. Управляющие конструкции
Лекция 5. Compile-time errors, runtime errors, undefined behavior
Лекция 6. Указатели
Лекция 7. Стековая, статическая и динамическая память
Лекция 8. Массивы, функции и указатели на функции
источник
#cpp #programming
👉 @cpp_lib
¡Ya disponible! Investigación de Telegram 2025 — los principales insights del año 
