Правка чужого кода
Для одного проекта мне понадобился просмотрщик памяти в DOS. В идеале хотелось бы иметь редактор памяти, чтобы в нём был поиск по ключевым словам, перемещение к заданному адресу. Но для старта мне было бы достаточно хотя бы возможность просмотра всего мегабайта доступной «нижней» памяти.
https://habr.com/ru/company/timeweb/blog/697688/
#cpp #programming
👉 @cpp_lib
Для одного проекта мне понадобился просмотрщик памяти в DOS. В идеале хотелось бы иметь редактор памяти, чтобы в нём был поиск по ключевым словам, перемещение к заданному адресу. Но для старта мне было бы достаточно хотя бы возможность просмотра всего мегабайта доступной «нижней» памяти.
https://habr.com/ru/company/timeweb/blog/697688/
#cpp #programming
👉 @cpp_lib
👍2
std::atomic_thread_fence
В этом примере два потока выполняют функции
-
-
#cpp #programming
👉 @cpp_lib
std::atomic_thread_fence
— это функция, которая устанавливает порядок синхронизации памяти для не атомарных и расслабленных атомарных доступов, как указано в аргументе order, без связанной атомарной операции.std::atomic_thread_fence
может использоваться для обеспечения правильного порядка чтения и записи в многопоточных программах.В этом примере два потока выполняют функции
write_x_then_y и read_y_then_x
:-
write_x_then_y
устанавливает значение атомарной переменной x равным 1, затем вызывает std::atomic_thread_fence
с аргументом std::memory_order_release
и устанавливает значение атомарной переменной y равным 1.-
read_y_then_x
считывает значение атомарной переменной y, затем вызывает std::atomic_thread_fence
с аргументом std::memory_order_acquire
и считывает значение атомарной переменной x.#cpp #programming
👉 @cpp_lib
👍4
Media is too big
VIEW IN TELEGRAM
Привет 🖐
За несколько дней мои матрицы координально изменились, в момент написания предыдущего поста, матрицы поддерживались лишь стандартом С++20 и выше, на данный момент библиотека настроена и собирается на С++11 С++14 С++17 С++20 С++23
Была пофикшена куча багов, как неочевидных с итераторами, так и простых опечаток.
Могу сказать, что тем, кому лень писать новые матрицы для своих школьных проектов можно смело использовать данную библиотеку, думаю boost использовать непозволительно, а вот библиотеку другого участника School21 вполне можно.
Как раз для этого я создал шаблон cmake проекта MTL (Matrix Template Library) с настроенными зависимости и подтягиванием исходников.
Шаблон можно скачать и попробовать по ссылке, все инструкции того, как настроить проект под себя есть в README .md
#cpp #programming
👉 @cpp_lib
За несколько дней мои матрицы координально изменились, в момент написания предыдущего поста, матрицы поддерживались лишь стандартом С++20 и выше, на данный момент библиотека настроена и собирается на С++11 С++14 С++17 С++20 С++23
Была пофикшена куча багов, как неочевидных с итераторами, так и простых опечаток.
Могу сказать, что тем, кому лень писать новые матрицы для своих школьных проектов можно смело использовать данную библиотеку, думаю boost использовать непозволительно, а вот библиотеку другого участника School21 вполне можно.
Как раз для этого я создал шаблон cmake проекта MTL (Matrix Template Library) с настроенными зависимости и подтягиванием исходников.
Шаблон можно скачать и попробовать по ссылке, все инструкции того, как настроить проект под себя есть в README .md
#cpp #programming
👉 @cpp_lib
👍3
The new static constexpr std::integral_constant idiom
https://www.foonathan.net/2023/08/static-constexpr-integral_constant/
#cpp #programming
👉 @cpp_lib
https://www.foonathan.net/2023/08/static-constexpr-integral_constant/
#cpp #programming
👉 @cpp_lib
www.foonathan.net
The new static constexpr std::integral_constant idiom
The size of std::array<T, N> is known at compile-time given the type.
Yet it only provides a regular .size() member function:
template <typename T, std::size_t N>
struct array {
constexpr std::size_t size() const {
return N;
}
};
This is annoying…
Yet it only provides a regular .size() member function:
template <typename T, std::size_t N>
struct array {
constexpr std::size_t size() const {
return N;
}
};
This is annoying…
👍3
Управление зависимостями с помощью Meson + WrapDB
В одной из недавних статей в блоге рассказывалось о том, как собирать и управлять зависимостями с помощью CMake и FetchContent. В качестве примера использовалось простое GUI-приложение, использующее мультимедийные библиотеки SFML и инструментарий виджетов Dear ImGui с использованием соответствующей библиотеки-обертки. Для сравнения проделаем то же самое с Meson.
https://nibblestew.blogspot.com/2021/05/managing-dependencies-with-meson-wrapdb.html
#cpp #programming
👉 @cpp_lib
В одной из недавних статей в блоге рассказывалось о том, как собирать и управлять зависимостями с помощью CMake и FetchContent. В качестве примера использовалось простое GUI-приложение, использующее мультимедийные библиотеки SFML и инструментарий виджетов Dear ImGui с использованием соответствующей библиотеки-обертки. Для сравнения проделаем то же самое с Meson.
FetchContent_Declare(
sfml
URL https://github.com/SFML/SFML/archive/refs/tags/2.5.1.zip
URL_MD5 2c4438b3e5b2d81a6e626ecf72bf75be
)
add_subdirectory(sfml)
https://nibblestew.blogspot.com/2021/05/managing-dependencies-with-meson-wrapdb.html
#cpp #programming
👉 @cpp_lib
Blogspot
Managing dependencies with Meson + WrapDB
A recent blog post talked about how to build and manage dependencies with CMake and FetchContent . The example that they used was a simple ...
👍1
Минимально жизнеспособный декларативный графический интерфейс на языке C++
https://ossia.io/posts/minimum-viable/
#cpp #programming
👉 @cpp_lib
https://ossia.io/posts/minimum-viable/
#cpp #programming
👉 @cpp_lib
👍3
Изучайте C++: Введение для начинающих
C++ - это мощный, универсальный и широко распространенный язык программирования, который остается актуальным в мире разработки программного обеспечения уже более трех десятилетий. В этой небольшой заметке мы познакомим вас с основами языка C++ и поможем заложить прочный фундамент для начала вашего пути в программировании.
https://dev.to/godot/learn-c-an-introduction-for-beginners-2m06
#cpp #programming
👉 @cpp_lib
C++ - это мощный, универсальный и широко распространенный язык программирования, который остается актуальным в мире разработки программного обеспечения уже более трех десятилетий. В этой небольшой заметке мы познакомим вас с основами языка C++ и поможем заложить прочный фундамент для начала вашего пути в программировании.
https://dev.to/godot/learn-c-an-introduction-for-beginners-2m06
#cpp #programming
👉 @cpp_lib
👍3
C++ — это замечательно, и вот почему
C++ — один из самых непонятных языков в современной поп-культуре разработчиков программного обеспечения. Люди часто сравнивают его с C, потому что это "низкоуровневый" язык. Следовательно, он получил репутацию эзотерического языка, который интересует только параноиков производительности. Это далеко не так. Я программирую на C++ в качестве основного языка уже некоторое время, и опыт разработчика на самом деле очень хорош — гораздо лучше, чем можно было себе представить.
В этой статье мне хотелось бы развенчать некоторые распространенные мифы о C++, которые я слышал до того, как начал его использовать. Затем расскажу о реальных супервозможностях, которые предоставляет C++ и которых нет у большинства других языков.
https://dev.to/vnjogani/c-is-awesome-here-s-why-1be0
#cpp #programming
👉 @cpp_lib
C++ — один из самых непонятных языков в современной поп-культуре разработчиков программного обеспечения. Люди часто сравнивают его с C, потому что это "низкоуровневый" язык. Следовательно, он получил репутацию эзотерического языка, который интересует только параноиков производительности. Это далеко не так. Я программирую на C++ в качестве основного языка уже некоторое время, и опыт разработчика на самом деле очень хорош — гораздо лучше, чем можно было себе представить.
В этой статье мне хотелось бы развенчать некоторые распространенные мифы о C++, которые я слышал до того, как начал его использовать. Затем расскажу о реальных супервозможностях, которые предоставляет C++ и которых нет у большинства других языков.
https://dev.to/vnjogani/c-is-awesome-here-s-why-1be0
#cpp #programming
👉 @cpp_lib
🔥6👍1👎1🤔1🥱1
Исследование различий между C++ и C: почему C++ преобладает
Если говорить о языках программирования, то C и C++ - это два основных языка, которые формировали мир разработки программного обеспечения на протяжении десятилетий. Оба языка известны своей эффективностью, универсальностью и мощью. Однако во многих областях С++ уверенно занимает лидирующие позиции, что делает его более предпочтительным выбором для современной разработки программного обеспечения. В сегодняшней статье мы рассмотрим различия между C++ и C и узнаем, почему C++ часто считается лучшим выбором.
https://dev.to/idurar/exploring-the-differences-between-c-and-c-why-c-prevails-2g8g
#cpp #programming
👉 @cpp_lib
Если говорить о языках программирования, то C и C++ - это два основных языка, которые формировали мир разработки программного обеспечения на протяжении десятилетий. Оба языка известны своей эффективностью, универсальностью и мощью. Однако во многих областях С++ уверенно занимает лидирующие позиции, что делает его более предпочтительным выбором для современной разработки программного обеспечения. В сегодняшней статье мы рассмотрим различия между C++ и C и узнаем, почему C++ часто считается лучшим выбором.
https://dev.to/idurar/exploring-the-differences-between-c-and-c-why-c-prevails-2g8g
#cpp #programming
👉 @cpp_lib
👍5👎4🥱1🖕1
Karl Åkerblom: Краткий обзор Tracy Profiler
Карл вкратце расскажет о профилировании инструментов в Tracy Profiler. Он также поделится своими впечатлениями после внедрения этой системы в работу; расскажет о некоторых приятных сюрпризах и о трудностях, с которыми он столкнулся на этом пути.
https://www.youtube.com/watch?v=W9U5y5jjQDM
#cpp #programming
👉 @cpp_lib
Карл вкратце расскажет о профилировании инструментов в Tracy Profiler. Он также поделится своими впечатлениями после внедрения этой системы в работу; расскажет о некоторых приятных сюрпризах и о трудностях, с которыми он столкнулся на этом пути.
https://www.youtube.com/watch?v=W9U5y5jjQDM
#cpp #programming
👉 @cpp_lib
YouTube
Karl Åkerblom: A quick look at Tracy Profiler
Karl will give you a quick look at the instrumentation profiling of Tracy Profiler. He also shares his impressions after adopting it at work; some pleasant surprises and some bumps in the road he encountered along the way.
Recorded at StockholmCpp 0x29:…
Recorded at StockholmCpp 0x29:…
👍1
Инструменты и библиотеки для создания собственного игрового движка на C++
Вы хотите узнать больше об игровых движках и написать их самостоятельно? Это здорово! Чтобы помочь вам на этом пути, вот некоторые рекомендации по библиотекам и зависимостям C++, которые помогут вам начать работу.
https://pikuma.com/blog/how-to-make-your-own-cpp-game-engine
#cpp #programming
👉 @cpp_lib
Вы хотите узнать больше об игровых движках и написать их самостоятельно? Это здорово! Чтобы помочь вам на этом пути, вот некоторые рекомендации по библиотекам и зависимостям C++, которые помогут вам начать работу.
https://pikuma.com/blog/how-to-make-your-own-cpp-game-engine
#cpp #programming
👉 @cpp_lib
👍9❤1
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
Parallel C++
Workload Distribution
Static Partitioning
Dynamic Partitioning
False Sharing
Double Buffering
Spinlocks
Fairness
Concurrent Containers
Blocking and Non-Blocking Algorithms
Lock-Free and Wait-Free Algorithms
источник
#cpp #programming
👉 @cpp_lib
Workload Distribution
Static Partitioning
Dynamic Partitioning
False Sharing
Double Buffering
Spinlocks
Fairness
Concurrent Containers
Blocking and Non-Blocking Algorithms
Lock-Free and Wait-Free Algorithms
источник
#cpp #programming
👉 @cpp_lib
👍4