Библиотека C/C++ разработчика
Open in Telegram
Полезные материалы по всему, что может быть полезно плюсовику/сишнику. По всем вопросам @evgenycarter
Show more7 195
Subscribers
+224 hours
+27 days
-2930 days
Posts Archive
Просто о RCU (Read–Copy-Update)
Lock-free структуры данных в общем и целом неплохо описаны в различной литературе, но на мой взгляд порог вхождения в эту тему высок. Приведу простой кейс использования одной из разновидностей данной технологии под названием RCU (Read–Copy-Update). В двух словах, это механизм неблокирующего обновления структуры данных у которой много читателей и всего один писатель. Wikipedia.
https://habr.com/ru/post/712882/
👉 @cpp_lib
Как новичку в разработке на C++ настроить среду для написания кода? — Узнайте 17 марта в 20:00 на открытом уроке специализации «C++ Developer» OTUS (возможна рассрочка).
▶️Тема вебинара: «Настройка VSCode для повседневной работы и отладки кода»
Visual Studio Code — это open source IDE, которая представляет собой уникальный инструмент. Пока настраиваешь её для работы над C++-проектом, неожиданно для себя изучаешь тонкости C++ и забываешь, для чего настраивал.
👨💻На занятии мы настроим VSCode для полноценной работы и посмотрим функциональность отладки на примерах.
👉 Перед занятием ЗАРЕГИСТРИРУЙТЕСЬ
Реклама. Информация о рекламодателе на сайте www.otus.ruHow C++23 changes the way we write code - Timur Doumler - Meeting C++ 2022
👉 @cpp_lib
Тетрис / Tetris на языке С++
Часть 1. Введение
Часть 2. Падение чёрного квадрата
Часть 3. Ограничение перемещения фигуры в рамках игрового поля
Часть 4. Удаление заполненных рядов
Часть 5. Рефакторинг кода
Часть 6. Фигура на стенку или стенка на фигуру? Генерация новых фигур
Часть 7. Поворот фигуры
Часть 8. Проверка столкновения фигуры с границами игрового поля после поворота
Часть 9. Простая анимация удаления заполненных рядов
Часть 10. Автоматический сдвиг фигуры после поворота
источник
👉 @cpp_lib
Forbidden C++
The unimaginable evil of C++ is unleashed. Be afraid. Global Variables, Macros, Void*, Goto, Namespace STD, New & Delete, all the tools every C++ programmer needs... right?
2:00 Global variables
8:00 Macros
12:36 Goto
16:20 Void *
22:17 Using namespace std
27:19 New and Delete
👉 @cpp_lib
Making C++ primitive types meaningfully movable when they have sentinel values
https://devblogs.microsoft.com/oldnewthing/20230116-00/?p=107717
👉 @cpp_lib
C elements that are not supported in C++🚫
https://dev.to/mariamarsh/c-elements-that-are-not-supported-in-c-4i6n
👉 @cpp_lib
Горькая правда: производительность Python 3.11, Cython и C++ ддля симуляций
https://medium.com/agents-and-robots/the-bitter-truth-python-3-11-vs-cython-vs-c-performance-for-simulations-babc85cdfef5
👉 @cpp_lib
Repost from Книги для программистов C/C++
C++ Crash Course: A Fast-Paced Introduction
Josh Lospinoso (2019)
C++ — один из наиболее широко используемых языков программирования, он позволяет создавать ёмкий, эффективный и читабельный код. Книга служит полным и быстрым введением в C++ для опытных программистов. После прочтения вы овладеете основами языка, стандартной библиотекой и научитесь работать с Boost.
@cpp_knigi
🔥 Хардкорный тест для Go-разработчиков!
💻 Ответьте на 20 вопросов за 30 минут и проверьте, готовы ли вы к обучению на онлайн-курсе «Golang Developer. Professional» от OTUS. Пройдете тест — получите welcome-скидку на курс. Возможна рассрочка.
🚀 Курс поможет прокачать навыки на реальных коммерческих кейсах и под руководством экспертов в этой области.
👉 Успешное прохождение теста откроет доступ к 2 урокам курса:
— Mock-собеседование со студентом курса Golang (бэкенд, базы данных, SystemDesign)
— Golang: Talk-сессия
🟢 Пройти тест: https://otus.pw/kEuq/
Реклама. Информация о рекламодателе на сайте www.otus.ru
C++ Postfix for VSCode
https://marketplace.visualstudio.com/items?itemName=xueshiqiao.cpp-postfix-for-vscode
👉 @cpp_lib
Пишем игру змейка (Snake) на C++ (+архив)
Управление змейкой клавишами управления курсором. Esc — завершение игры. Для выхода из игры надо нажать Esc или клавишу N на вопрос «Once more?». Змейка не должна натыкаться на стенки и на собственный хвост. Это — смерть. Змейка не умеет ползать хвостом вперёд. Попытаться заставить её это сделать — верная смерть. Кормить змейку надо, естественно, долларами. Когда змейка ест, она растёт.
Программа написана для Windows 2000 Professional (и выше). Для переноса под другие операционки необходимо переписать реализацию класса CScreen и иметь порт библиотеки conio.h.
https://itmozg.ru/pishem-igru-zmejka-snake-na-c/
👉 @cpp_lib
❓Хотите развиваться в С++ разработке? 28 февраля в 20:00 на открытом уроке мы разберем основы CMake. Вебинар пройдет в рамках специализации «C++ Developer» в OTUS.
▶️Тема вебинара: «Основы CMake»
CMake — популярный и удобный инструмент для автоматизации сборки приложений. Он используется в большом количестве проектов.
На занятии с преподавателем мы рассмотрим преимущества и базовые возможности CMake, а также научимся писать простые настройки сборки и собирать простые проекты с помощью CMake.
Больше инструментов ждет вас на онлайн-курсе. Он доступен в рассрочку.
👉 Для участия РЕГИСТРИРУЙСЯ
Реклама. Информация о рекламодателе на сайте www.otus.ru
5 приемов написания безопасного по памяти C++ кода
https://www.embedded.com/5-techniques-for-writing-memory-safe-c/
👉 @cpp_lib
Counting from 98 to 14 in C++
https://julien.jorge.st/counting-in-cpp/
👉 @cpp_lib
std::conditional_variable и std::atomic_flag в С++20
Основная идея статьи - сравнить производительность std::conditional_variable и std::atomic_flag::wait из С++20, посмотреть примеры использования.
Когда встает вопрос об ожидании какого-то события/событий, то одно из первых что приходит на ум - это std::conditional_variable. Согласно cppreference:
https://habr.com/ru/post/708918/
👉 @cpp_lib
The Evolution of Functions in Modern C++
https://mariusbancila.ro/blog/2022/01/01/the-evolution-of-functions-in-modern-cpp/
👉 @cpp_lib
👩💻 Как устроен планировщик Go?
📢📢 Узнайте на открытом уроке 28 февраля в 20:00 мск онлайн-курса «Golang Developer. Professional» в OTUS. Не упустите возможность протестировать курс и познакомиться с преподавателем. Урок рассчитан на программистов с опытом и начинающих Go-разработчиков.
✅ На занятии мы:
— Посмотрим на то, как устроен планировщик внутри Go.
— Узнаем, как эти знания можно использовать в повседневной практике.
💻 Спикером выступит Балун Владимир, преподаватель курса и ведущий разработчик в Ozon.
💎 Продолжить изучение Go вы сможете на курсе, на него действует рассрочка.
➡️Определите свой уровень подготовки с помощью теста и регистрируйтесь на мероприятие: https://otus.pw/pBfG/.
Реклама. Информация о рекламодателе на сайте www.otus.ru
Structured bindings in C++17, 5 years later
https://www.cppstories.com/2022/structured-bindings/
👉 @cpp_lib
