ar
Feedback
Библиотека C/C++ разработчика

Библиотека C/C++ разработчика

الذهاب إلى القناة على Telegram

Полезные материалы по всему, что может быть полезно плюсовику/сишнику. По всем вопросам @evgenycarter

إظهار المزيد
7 323
المشتركون
+224 ساعات
+87 أيام
+1430 أيام
أرشيف المشاركات
21 фича современного C++, которые вам обязательно пригодятся Итак, судьба снова свела вас с C++, и вы поражены его возможност
21 фича современного C++, которые вам обязательно пригодятся Итак, судьба снова свела вас с C++, и вы поражены его возможностями с точки зрения производительности, удобства и выразительности кода. Но вот незадача: вы теряетесь в этом многообразии замечательных новых фич и, как следствие, затрудняетесь сходу определить, что из этого всего вам действительно стоило бы взять на вооружение в своей повседневной работе по написанию кода. Не стоит расстраиваться, в этой статье вашему вниманию будут представлены 21 новая фича современного C++, которые помогут сделать ваш проект лучше, а работу над ним легче. https://www.vishalchovatiya.com/21-new-features-of-modern-cpp-to-use-in-your-project/ #cpp #programming 👉 @cpp_lib

🔥Магия вне Хогвартса для начинающих Embedded Developer! 19 декабря в 20.00 (мск) приглашаем на открытый урок курса Embedded
🔥Магия вне Хогвартса для начинающих Embedded Developer! 19 декабря в 20.00 (мск) приглашаем на открытый урок курса Embedded Developer в OTUS «Философский камень или как оживить кристалл кодом», где вы узнаете: - как программируются микроконтроллеры; - какие языки для этого используют; - способы написания кода и его влияние; - что такое фреймворки и какие они бывают; - что такое RTOS и почему это высший навык программирования. ⚡Занятие приурочено к старту курса, программа которого позволит погрузиться в три самые важные области: программирование микроконтроллеров, проектирование печатных плат, схемотехника. А по итогам обучения вы сможете разработать собственное цифровое устройство. 👉Регистрация для участия https://otus.pw/8ksm/?erid=LjN8KKBAe После урока возможно продолжить обучение по специальной цене и с рассрочкой платежа. Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.

C++ System Programming Cookbook: Practical recipes for Linux system-level programming using the latest C++ features Onorato Vaticone (2020) C++ является хорошим выбором для системного программирования из-за его эффективных низкоуровневых вычислений, абстракции данных и объектно-ориентированных особенностей. Системное программирование - это разработка и написание компьютерных программ, которые тесно взаимодействуют с базовой операционной системой и позволяют компьютерному оборудованию взаимодействовать с программистом и пользователем. Данная книга послужит справочником для разработчиков, которые хотят иметь готовые к использованию решения для основных аспектов системного программирования. 👉 @cpp_knigi

Магия swizzle из шейдеров в C++ В шейдере мы можем написать vec3 v0 = v1.xxy * 2, а также любую другую комбинацию x, y, z и w
Магия swizzle из шейдеров в C++ В шейдере мы можем написать vec3 v0 = v1.xxy * 2, а также любую другую комбинацию x, y, z и w в зависимости от длины вектора. Я рассматриваю только размеры вектора до 4, как самые распространенные для использования. Полученный вектор может иметь не только ту же самую размерность, но и меньшую или большую, причем его компоненты могут быть скопированы в произвольном порядке. Эта операция называется 'swizzle', и она чертовски удобна для различных операций с малоразмерными векторами, особенно если они представляют игровые сущности в виде позиций, размера или цветов. Вектора используются повсюду в игровых проектах (да и не только в игровых), а не только в шейдерах. В какой-то момент было решено добавить 'swizzle' в наш игровой движок в базовые классы vec2, vec3 и vec4. Возникли вопросы: как добиться такого же синтаксического и семантического поведения в C++ коде, при этом минимизируя потери производительности. https://habr.com/ru/articles/779616/ #cpp #programming 👉 @cpp_lib

Начните изучение архитектуры ПО с бесплатного открытого урока «Модели взаимодействия или модели хранения данных» от OTUS. На
Начните изучение архитектуры ПО с бесплатного открытого урока «Модели взаимодействия или модели хранения данных» от OTUS. На вебинаре: - рассмотрим различные типы хранилищ: реляционные базы данных, NoSQL-базы и хранилища файлов; - узнаем, как выбрать наиболее подходящий тип хранилища для различных сценариев и требований; - изучим популярные модели CQRS и Event Sourcing. Занятие пройдёт 20 декабря в 20:00 мск и будет приурочено к старту курса «Software Architect». После урока вы сможете продолжить обучение в рассрочку по специальной цене. Регистрируйтесь бесплатно прямо сейчас и ставьте событие в календарь, чтобы ничего не пропустить: https://vk.cc/cteZAe Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru

О хранении изображений в памяти с выравниванием В разговорах с коллегами, а также по отдельным постам на форумах я заметил, ч
О хранении изображений в памяти с выравниванием В разговорах с коллегами, а также по отдельным постам на форумах я заметил, что даже относительно опытные разработчики порой не очень понимают особенности хранения изображений в памяти. Если вы знаете, что такое выравнивание на границу 64-x байт, а также термины типа «длина или шаг строки (LineWidth/StepWidth, Stride)», «зазоры выравнивания (Alignment Gaps)», кроме того в курсе размеров линий кэша и страниц, то вам, вероятно, не будет интересно, а остальные, особенно те, кто интересуется обработкой изображений — могут ознакомиться с предлагаемым материалом, и, возможно найдут для себя что-то новое и полезное. Под катом будет немножко кода на Си и ассемблере, пара LabVIEW скриншотов, предполагается также, что у читателя есть базовые знания OpenCV. Для экспериментов понадобится компьютер с камушком, поддерживающим AVX2, всё это под Windows 11 x64. https://habr.com/ru/articles/773948/ #cpp #programming 👉 @cpp_lib

Простая в реализации arena-friendly hash map https://nullprogram.com/blog/2023/09/30/ #cpp #programming 👉 @cpp_lib
Простая в реализации arena-friendly hash map https://nullprogram.com/blog/2023/09/30/ #cpp #programming 👉 @cpp_lib

Где изучать C++ с нуля до Middle-уровня? 19 декабря в 20:00 мск на открытом уроке мы разберем пример реализации полиморфизма
Где изучать C++ с нуля до Middle-уровня? 19 декабря в 20:00 мск на открытом уроке мы разберем пример реализации полиморфизма на языке С++. Что будет на занятии: - реальных практический пример использования полиморфизма, а не синтетические животные или геометрические фигуры, как это часто встречается в учебниках; - синтаксис языка C++ для объявления виртуальных функций; - разборе того, как под капотом работают виртуальные функции. Чему научитесь: - в каких случаях полезно использовать полиморфизм - как работать с виртуальными функциями в C++ - какая цена использования виртуальных функций Кому это будет полезно: начинающим программистам на C++ программистам на других языках, которые интересуются C++ Занятие пройдёт в рамках курса «Специализация C++ Developer». После урока вы сможете продолжить обучение на специальных условиях. Для бесплатного участия и получения записи регистрируйтесь прямо сейчас: https://vk.cc/ctd5zw Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru

Pure Virtual Cast / С++ - производительность и щепотка безопасности. https://www.youtube.com/watch?v=kWBu3Yg5fjE #cpp #programming 👉 @cpp_lib

Майкл Керриск :: Понимание пространств имен пользователей Linux Пользовательские пространства имен лежат в основе многих интересных технологий Linux, позволяющих изолировать и изолировать приложения, например, запускать контейнеры без привилегий root и создавать "песочницу" для плагинов веб-браузеров. В этой презентации мы подробно рассмотрим пользовательские пространства имен, получив базовое представление о том, что такое пользовательское пространство имен, и перейдем к таким вопросам, как: что позволяет вам делать статус "суперпользователя внутри пользовательского пространства имен" (и чего он не позволяет); и какова связь между пользовательскими пространствами имен и другими типами пространств имен (PID, UTS, сетевое и т. д.)? Мы также воспользуемся некоторыми простыми командами оболочки для создания и экспериментов с пользовательскими пространствами имен, чтобы лучше понять, как они работают. источник #cpp #programming 👉 @cpp_lib

Майкл Керриск :: Понимание пространств имен пользователей Linux Пользовательские пространства имен лежат в основе многих интересных технологий Linux, позволяющих изолировать и изолировать приложения, например, запускать контейнеры без привилегий root и создавать "песочницу" для плагинов веб-браузеров. В этой презентации мы подробно рассмотрим пользовательские пространства имен, получив базовое представление о том, что такое пользовательское пространство имен, и перейдем к таким вопросам, как: что позволяет вам делать статус "суперпользователя внутри пользовательского пространства имен" (и чего он не позволяет); и какова связь между пользовательскими пространствами имен и другими типами пространств имен (PID, UTS, сетевое и т. д.)? Мы также воспользуемся некоторыми простыми командами оболочки для создания и экспериментов с пользовательскими пространствами имен, чтобы лучше понять, как они работают. https://www.youtube.com/watch?v=XgThPoL9mPE #cpp #programming 👉 @cpp_lib

erid: LjN8JtLX8 🦾Хардкорный тест по языку С🦾 📌Пройдите тест из 20 вопросов и проверьте, насколько вы готовы к обучению на
erid: LjN8JtLX8 🦾Хардкорный тест по языку С🦾 📌Пройдите тест из 20 вопросов и проверьте, насколько вы готовы к обучению на углубленном курсе - «Программист С» от OTUS. Сможете сдать - пройдете на курс по спеццене! ⏰ Время прохождения теста ограничено 30 минут 👉ПРОЙТИ ТЕСТ Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.

+3
С++ Сергей Шамбир (iSpring) - “Быстрые и надёжные сигналы-слоты в C++” Евгений Зуев (Университет Иннополис) - “Архитектура компиляции: проблемы и решения.” Константин Гейст (iSpring) - “Следи за своим состоянием: валидация в ООП” Антон Полухин (Yandex.Taxi) - Полезный constexpr Институт программных систем источник #cpp #programming 👉 @cpp_lib

Классические или плоские ассоциативные контейнеры – что выбрать разработчику на С++? Разберемся на бесплатном открытом уроке
Классические или плоские ассоциативные контейнеры – что выбрать разработчику на С++? Разберемся на бесплатном открытом уроке вместе с Андреем Рыжиковым – разработчиком в НИИ обработки аэрокосмических изображений. На вебинаре: - вспомним устройство «классических» ассоциативных контейнеров; - поймем, как выбрать между std::map и std::unordered_map; - узнаем, как реализованы «плоские» контейнеры из C++23 и когда их стоит предпочесть. Занятие пройдёт 20 декабря в 20:00 мск в рамках курса «C++ Developer. Professional». После урока вы сможете продолжить обучение в рассрочку. Для бесплатного участия и получения записи пройдите короткое тестирование прямо сейчас: https://vk.cc/ct614U Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru

Измерение частоты на STM32 В этой небольшой статье хочу рассказать вам о различных методах измерения частоты прямоугольного с
Измерение частоты на STM32 В этой небольшой статье хочу рассказать вам о различных методах измерения частоты прямоугольного сигнала с помощью микроконтроллера STM32. В процессе работы над одной из железок возникла необходимость организовать несколько выводов, которые бы измеряли частоту входного сигнала. Опробовав несколько разных вариантов, я решил, что негоже примерам пылиться на задворках диска D и стоит ими поделиться с сообществом. Надеюсь кому-то, находящемся в похожей ситуации, этот материал будет полезен. Материал в первую очередь рассчитан на новичков. https://habr.com/ru/articles/770478/ #cpp #programming 👉 @cpp_lib

Экскурсия по C++, A (серия с углубленным изучением C++) Бьярне Страуструп (2023) В "Экскурсии по C+", третьем издании, Бьярне
Экскурсия по C++, A (серия с углубленным изучением C++) Бьярне Страуструп (2023) В "Экскурсии по C+", третьем издании, Бьярне Страуструп дает обзор стандарта ISO C++, C++20, цель которого - дать опытным программистам четкое представление о том, что представляет собой современный C++. Это пересмотренное и обновленное издание, содержащее тщательно проработанные примеры и практическую помощь в начале работы, кратко описывает большинство основных языковых возможностей и основные компоненты стандартной библиотеки, необходимые для эффективного использования. Скачать книгу 👉 @cpp_knigi

❓Что нужно знать новичкам в С++, чтобы выделяться среди конкурентов? ✅Расскажем на бесплатном открытом уроке «Как в С++ сдела
❓Что нужно знать новичкам в С++, чтобы выделяться среди конкурентов? ✅Расскажем на бесплатном открытом уроке «Как в С++ сделать указатель умным и зачем» от OTUS и Карины Дорожкиной – ведущего разработчика С++ с более, чем 10-летним опытом. 🔥На вебинаре: - поговорим об опасности сырых указателей и зачем им интеллектуальность; - обсудим идиому RAII и познакомимся с одним из умных указателей std::unique_ptr; - разберём сложности работы с динамической памятью в C++ и другое. 📆 Занятие пройдёт 7 декабря в 20:00 мск в рамках курса «Специализация C++ Developer». После урока вы сможете продолжить обучение на специальных условиях. 👉Для бесплатного участия регистрируйтесь сейчас: https://vk.cc/csYtIH Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru

C++ Templates: The Complete Guide Автор: Douglas Gregor, Nicolai M. Josuttis, David Vandevoorde (2017) Шаблоны — одна из самых мощных особенностей C++, но они по-прежнему часто используются неэффективно и неправильно, несмотря на улучшения в языке. В данной книге три эксперта по C++ показывают почему, когда и как использовать современные шаблоны для создания более быстрого, эффективного и простого в обслуживании программного обеспечения. Во время чтения книги вы: ✔️Поймете, как именно ведут себя шаблоны, и сможете избежать распространенных ошибок; ✔️Научитесь использовать шаблоны для написания более эффективного, гибкого и удобного в обслуживании программного обеспечения; ✔️Освоите самые эффективные современные идиомы и техники; ✔️Воспользуетесь утилитами для обобщенного программирования в стандартной библиотеке C++. @cpp_knigi

Структурированная диагностика в новом окне сведений о проблеме Многочисленные ошибки компилятора, в которых, кажется, невозмо
Структурированная диагностика в новом окне сведений о проблеме Многочисленные ошибки компилятора, в которых, кажется, невозможно разобраться, - бич многих разработчиков C++. Инструменты должны предоставлять лучший опыт, чтобы помочь вам понять диагностику и понять, как исправить корень проблемы. https://devblogs.microsoft.com/cppblog/structured-diagnostics-in-the-new-problem-details-window/ #cpp #programming 👉 @cpp_lib

Как сделать юнит-тестирование на C++ эффективнее? Расскажем на бесплатном открытом уроке «Mocking в unit-тестировании с испол
Как сделать юнит-тестирование на C++ эффективнее? Расскажем на бесплатном открытом уроке «Mocking в unit-тестировании с использованием GTest» от OTUS. Рассмотрим способ unit-тестирования с помощью mock-объектов, когда интерфейс тестируемого кода не позволяет легко изолировать его от внешних зависимостей. Вебинар будет полезен разработчикам программного обеспечения и QA-инженерам. Занятие пройдёт 14 декабря в 20:00 мск в рамках курса «C++ Developer. Professional». После урока вы сможете продолжить обучение в рассрочку. Для бесплатного участия и получения записи пройдите короткое тестирование прямо сейчас: https://vk.cc/csVfqu Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru