The Evolution of Functions in Modern C++
https://mariusbancila.ro/blog/2022/01/01/the-evolution-of-functions-in-modern-cpp/
👉 @cpp_lib
https://mariusbancila.ro/blog/2022/01/01/the-evolution-of-functions-in-modern-cpp/
👉 @cpp_lib
Marius Bancila's Blog | About code. Mostly on C++
The Evolution of Functions in Modern C++
Learn about the evolution of functions in modern C++ with changes from C++11/14/17/20. This article is a brief walkthrough the changes from the last decade.
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
Основная идея статьи - сравнить производительность std::conditional_variable и std::atomic_flag::wait из С++20, посмотреть примеры использования.
Когда встает вопрос об ожидании какого-то события/событий, то одно из первых что приходит на ум - это std::conditional_variable. Согласно cppreference:
https://habr.com/ru/post/708918/
👉 @cpp_lib
Хабр
std::conditional_variable и std::atomic_flag в С++20
Основная идея статьи - сравнить производительность std::conditional_variable и std::atomic_flag::wait из С++20, посмотреть примеры использования. Когда встает вопрос об ожидании какого-то...
👍2🔥1
❤1
5 приемов написания безопасного по памяти C++ кода
https://www.embedded.com/5-techniques-for-writing-memory-safe-c/
👉 @cpp_lib
https://www.embedded.com/5-techniques-for-writing-memory-safe-c/
👉 @cpp_lib
Embedded
5 techniques for writing memory safe C++ - Embedded
C++ is not a memory-safe language; however, many features and techniques can be used to write memory-safer code. If you’ve been paying attention to the
👍3🔥1
Пишем игру змейка (Snake) на C++ (+архив)
Управление змейкой клавишами управления курсором. Esc — завершение игры. Для выхода из игры надо нажать Esc или клавишу N на вопрос «Once more?». Змейка не должна натыкаться на стенки и на собственный хвост. Это — смерть. Змейка не умеет ползать хвостом вперёд. Попытаться заставить её это сделать — верная смерть. Кормить змейку надо, естественно, долларами. Когда змейка ест, она растёт.
Программа написана для Windows 2000 Professional (и выше). Для переноса под другие операционки необходимо переписать реализацию класса CScreen и иметь порт библиотеки conio.h.
https://itmozg.ru/pishem-igru-zmejka-snake-na-c/
👉 @cpp_lib
Управление змейкой клавишами управления курсором. Esc — завершение игры. Для выхода из игры надо нажать Esc или клавишу N на вопрос «Once more?». Змейка не должна натыкаться на стенки и на собственный хвост. Это — смерть. Змейка не умеет ползать хвостом вперёд. Попытаться заставить её это сделать — верная смерть. Кормить змейку надо, естественно, долларами. Когда змейка ест, она растёт.
Программа написана для Windows 2000 Professional (и выше). Для переноса под другие операционки необходимо переписать реализацию класса CScreen и иметь порт библиотеки conio.h.
https://itmozg.ru/pishem-igru-zmejka-snake-na-c/
👉 @cpp_lib
👍6
Горькая правда: производительность 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
https://medium.com/agents-and-robots/the-bitter-truth-python-3-11-vs-cython-vs-c-performance-for-simulations-babc85cdfef5
👉 @cpp_lib
👍4👎2
C elements that are not supported in C++🚫
https://dev.to/mariamarsh/c-elements-that-are-not-supported-in-c-4i6n
👉 @cpp_lib
https://dev.to/mariamarsh/c-elements-that-are-not-supported-in-c-4i6n
👉 @cpp_lib
🔥3👍1
Making C++ primitive types meaningfully movable when they have sentinel values
https://devblogs.microsoft.com/oldnewthing/20230116-00/?p=107717
👉 @cpp_lib
https://devblogs.microsoft.com/oldnewthing/20230116-00/?p=107717
👉 @cpp_lib
Microsoft News
Making C++ primitive types meaningfully movable when they have sentinel values
The value actually moves now.
👍4
Media is too big
VIEW IN TELEGRAM
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
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
👍5
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Тетрис / Tetris на языке С++
Часть 1. Введение
Часть 2. Падение чёрного квадрата
Часть 3. Ограничение перемещения фигуры в рамках игрового поля
Часть 4. Удаление заполненных рядов
Часть 5. Рефакторинг кода
Часть 6. Фигура на стенку или стенка на фигуру? Генерация новых фигур
Часть 7. Поворот фигуры
Часть 8. Проверка столкновения фигуры с границами игрового поля после поворота
Часть 9. Простая анимация удаления заполненных рядов
Часть 10. Автоматический сдвиг фигуры после поворота
источник
👉 @cpp_lib
Часть 1. Введение
Часть 2. Падение чёрного квадрата
Часть 3. Ограничение перемещения фигуры в рамках игрового поля
Часть 4. Удаление заполненных рядов
Часть 5. Рефакторинг кода
Часть 6. Фигура на стенку или стенка на фигуру? Генерация новых фигур
Часть 7. Поворот фигуры
Часть 8. Проверка столкновения фигуры с границами игрового поля после поворота
Часть 9. Простая анимация удаления заполненных рядов
Часть 10. Автоматический сдвиг фигуры после поворота
источник
👉 @cpp_lib
👍6