cpp_lib | Unsorted

Telegram-канал cpp_lib - Библиотека C/C++ разработчика

2630

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

Subscribe to a channel

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

Получить работу в крутой компании за один день? Легко!
Оставь заявку на участие в One day offer, который проводит разработчик офисного ПО МойОфис, и оперативно получи предложение о работе.

Компания ищет программистов C++ с хорошим знанием C++ 11/14, STL, Boost, QT и опытом работы более 3-х лет. Если ты соответствуешь этим критериям, то оставь заявку на участие до 10 июня, выполни тестовое задание и ожидай приглашение на собеседование, которое пройдет 17 июня.

Обещают удаленный или гибридный график работы, интересные задачи, конкурентную заработную плату, а также помощь с релокацией в Москву, Санкт-Петербург, Самару или Иннополис.

Подробности и регистрация на сайте проекта

Читать полностью…

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

Три очень практичные фичи C++23

C++23 — это текущая рабочая версия стандарта C++. На момент написания статьи туда пока не было включено ни одной крупной фичи, но ряд небольших нововведений, а также множество отчетов о дефектах уже утверждены в стандарте. Вы можете посмотреть текущий статус и поддержку компиляторами новых фич здесь. Многие из этих нововведений представляют из себя небольшие улучшения и вещи, которыми вы, вероятно, не будете пользоваться на регулярной основе. Однако сегодня я хочу обратить ваше внимание на три новые фичи C++23, которые, на мой взгляд, выделяются на фоне остальных именно тем, насколько часто они будут встречаться в нашем коде.

https://mariusbancila.ro/blog/2022/01/17/three-cpp23-features-for-common-use/

#cpp #programming

👉 @cpp_lib

Читать полностью…

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

STL IN C++

STL In C++
std array C++
Vector In C++
Optimized Way To Use Vector In C++
std::set In C++
Container Inside Container In C++
Multiset In C++
Map In C++
Multimap In C++
Emplace In C++

источник

#cpp #programming

👉 @cpp_lib

Читать полностью…

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

👩‍💻 Тест на знание языка

— Ответьте на 20 вопросов и проверьте, насколько хорошо вы знаете язык C++. Сможете сдать — пройдёте на продвинутый онлайн-курс "C++ Developer. Professional" со скидкой!

👉 ПРОЙТИ ТЕСТ ОНЛАЙН-КУРСА "C++ Developer. Professional"

Курс доступен в рассрочку.

🎁 Пройдете успешно тест, получите доступ к открытым урокам курса.

Хотите посмотреть как проходит обучение? Приходите на открытый урок курса.

📢📢 31.05 - регистрация на открытый урок "Обзор современных инструментов разработки на C++"

Нативная интеграция. Информация о продукте www.otus.ru

Читать полностью…

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

⚙️ Курс «Реверсивный инжиниринг ПО под ОС Windows»
Старт: 5 июня
Длительность: 6 месяцев

🎓 Курс позволяет подробно изучить основные направления реверсинга приложений под Windows. В курсе подробно рассматриваются команды языка Ассемблера, детальный анализ приложений различного уровня сложности, от специальных задач типа crackme до рабочих приложений. Также изучаются образцы вредоносных приложений и различные техники, используемые исследователями.

ℹ️ Кому будет полезен курс:

✔️ Пентестерам, желающим лучше изучить направление реверсинга приложений;
✔️ Вирусным аналитикам и исследователям кода занимающимся изучением вредоносного ПО;
✔️ Программистам, разрабатывающим продукты в области ИБ;

*Для прохождения курса необходимы базовые знания реверса

🏆 Выдаём сертификат при успешной сдаче экзамена

В честь четвертой безоговорочной победы Codeby на Standoff, команда Академии дарит скидку 10% на оплату курса до 15 июня. Промокод: REWWIN0623

📌 Узнать подробнее о курсе

Читать полностью…

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

В Москве заметили необычные баннеры с кодом от Академии Яндекса, в которых точно что-то спрятано, но в коде есть ошибка.
Пытаемся разобрать эту задачку, но пока не выходит. Может, у вас получится?

@BookPython

Читать полностью…

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

Как итерироваться через std::tuple, std::apply и многое другое

https://www.cppstories.com/2022/tuple-iteration-apply/

#cpp #programming

👉 @cpp_lib

Читать полностью…

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

TCP/IP сети с помощью Boost.Asio

Boost.Asio - это кроссплатформенная библиотека C++ для программирования сетей и низкоуровневого ввода-вывода, которая предоставляет разработчикам последовательную асинхронную модель с использованием современного подхода C++.

В этом месяце Ричард Томсон продолжит наше знакомство с Boost.Asio рассмотрением сетевых технологий TCP/IP. Мы рассмотрим, как реализовать клиент NNTP (Network News Transport Protocol) с помощью Boost.Asio. NNTP - это линейно-ориентированный протокол для чтения новостных статей usenet. Это даст нам представление обо всех типичных проблемах, связанных с сетевыми приложениями TCP/IP:

- Как преобразовать имя хоста в IP-адрес?
- Как установить долговременное соединение с сервером NNTP?
- Как обрабатывать произвольно большие объемы данных с NNTP-сервера, которые поступают асинхронно?
- Как мы координируем ввод данных пользователем с вводом/выводом NNTP?
- Как мы справляемся с неожиданными сетевыми ошибками?

источник

#cpp #programming

👉 @cpp_lib

Читать полностью…

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

Better than Singletons: The Service Locator Pattern

https://abstractexpr.com/2023/04/25/better-than-singletons-the-service-locator-pattern/

#cpp #programming

👉 @cpp_lib

Читать полностью…

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

🔥Как подключить библиотеки С++ к реальным проектам?

⚡️Узнаете на бесплатном занятии OTUS, которое пройдет 26 мая в 20:00. На встрече займемся подключением библиотеки для создания Python-модуля.

В результате занятия вы научитесь использовать:

-CMake и vcpkg для подключения библиотек;
-С++ и CMake для создания библиотек;
-pybind11 для создания Python-модулей.

✨Это открытое занятие пройдет в рамках специализации “C++ Developer” и будет особенно полезно начинающим разработчикам на плюсах. После пробного урока вы сможете приобрести онлайн-курс в рассрочку.

Успевайте записаться на пробный урок!
https://otus.pw/Bl5Y/

Нативная интеграция. Информация о продукте www.otus.ru

Читать полностью…

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

userver — что мы узнали за полгода в open-source

Прошло больше полугода с момента выхода фреймворка для C++ 🐙 userver в open-source. За это время мы многое узнали, на многом настрадались, а главное — получили много приятных сюрпризов.

И мы решили об этом написать. Рассказ будет полезен тем, кто ведёт или планирует вести свой open-source проект или занимается контрибьютами. Остальным будет интересно почитать про чужое набивание шишек и что вообще open-source даёт проекту.

https://habr.com/ru/companies/yandex/articles/729588/

#cpp #programming

👉 @cpp_lib

Читать полностью…

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

Debugging a Mixed Python and C Language Stack

https://developer.nvidia.com/blog/debugging-mixed-python-and-c-language-stack/

#cpp #programming

👉 @cpp_lib

Читать полностью…

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

Использование std::chrono

Цель этой заметки - показать, как библиотека <chrono> может быть использована для решения практической, но не столь очевидной проблемы. В Интернете есть много хорошего материала, по которому можно изучить <chrono>, например, цикл лекций Говарда Хиннанта - автора библиотеки:

https://akrzemi1.wordpress.com/2022/04/11/using-stdchrono/


#cpp #programming

👉 @cpp_lib

Читать полностью…

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

Для тех, кто программирует на Go!

Golang-разработчиков с опытом от трех лет приглашают на Go Weekend Offer в Тинькофф. Все этапы интервью можно будет пройти за выходные. А еще вы познакомитесь с командой и спросите обо всем, что вас интересует.

В Тинькофф нет бюрократии, много интересных проектов и прозрачная система карьерного роста. А работать можно в гибридном режиме в офисах в 22 городах России или в Казахстане, Беларуси и Армении.

И главное: Go Weekend Offer состоится 3 и 4 июня. Но подать заявку надо до 31 мая. Регистрируйтесь!

Читать полностью…

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

C++ OpenGL Tutorial

1 - Installation
2 - Hello, OpenGL

Всего доступно 58 уроков на youtube

#cpp #programming

👉 @cpp_lib

Читать полностью…

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

Анонс scip-clang: новый SCIP-индексатор для C и C++

scip-clang - это наш новый индексатор для кода на языках C и C++, написанный с нуля для нативной эмуляции SCIP и особенно для поддержки широкого спектра языковых возможностей, присутствующих в C++.

https://about.sourcegraph.com/blog/announcing-scip-clang

#cpp #programming

👉 @cpp_lib

Читать полностью…

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

Хотите разрабатывать игры, обучать нейросети или создавать приложения наподобие Telegram и Skype? Тогда вам стоит изучать C++.

📆Не знаете, с чего начать? Приходите 7 июня в 20:00 мск на вебинар, приуроченный к старту онлайн-курса «Специализация С++ Developer» в OTUS.

Тема открытого урока: «Ускоряем матричное умножение на C++».

На занятии мы:
— Рассмотрим способы хранения матриц в памяти
— Сравним по скорости исполнения различные алгоритмы умножения
— Обсудим причины отличий во времени исполнения.

В результате научитесь писать микробенчмарки на C++ с использованием библиотеки Google Benchmark, узнаете, как ускорить операции умножения матриц.

Это будет полезно как начинающим программистам на С++, так и программистам на других языках.

Продолжить обучение на онлайн-курсе можно в рассрочку.

➡️Для участия нужно только зарегистрироваться: https://otus.pw/Smxv/

Нативная интеграция. Информация о продукте www.otus.ru

Читать полностью…

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

Practical usage of ref-qualified member function overloading

https://victor-istomin.github.io/c-with-crosses/posts/ref-qualifiers/

#cpp #programming

👉 @cpp_lib

Читать полностью…

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

Автоматическая сериализация в C++ для игровых движков

Вы создали свою игру, возможно, сделали движок, и теперь готовы внести последние штрихи. Игроки определенно захотят сохранить свою игру. Это означает сохранение всего текущего состояния игры в файл..... Ничего себе, сколько работы, правда? Теперь каждый враг, персонаж, предмет, поваленное дерево, взорванное здание, локация и т.д. должны быть помещены в файл. А потом нужно снова его прочитать. Какой кошмар.

В этой статье я собираюсь показать вам, как я создал свою собственную библиотеку сериализации. Конечно, есть существующие библиотеки, которые можно использовать, но я, как всегда, даже не смотрю на них, мне интереснее сделать это самому.

https://indiegamedev.net/2022/03/28/automatic-serialization-in-cpp-for-game-engines/

#cpp #programming

👉 @cpp_lib

Читать полностью…

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

Как отлаживать лямбда-выражения C++ с помощью GDB

В современных версиях языка программирования C++ есть функция, известная как лямбда-выражения. В этой статье показано, как можно отлаживать лямбда-выражения с помощью GDB, GNU Project Debugger. Даже если вас не интересует отладка лямбда-выражений, представленные здесь приемы полезны для многих других ситуаций отладки.

https://developers.redhat.com/articles/2023/05/03/how-debug-c-lambda-expressions-gdb

#cpp #programming

👉 @cpp_lib

Читать полностью…

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

Реализация утилиты cat на C

Программисты часто используют встроенные команды unix для решения задач. Давайте реализуем cat. cat - утилита которая объединяет файлы и выводит их в стандартный вывод.

Цель
Идея довольно проста - принять файл в качестве аргумента, открыть его, занести в буфер по частям и вывести на стандартный вывод. Утилита cat также оснащена различными флагами опций, которые позволяют пользователю манипулировать буфером перед его отправкой на стандартный вывод.

https://habr.com/ru/articles/734254/

#cpp #programming

👉 @cpp_lib

Читать полностью…

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

Include guards и их оптимизация

В этой статье обсуждается назначение и важность include guards в проектах на C/C++. В ней также рассматриваются оптимизации, которые компиляторы применяют вокруг include guards для улучшения времени сборки, и то, как легко можно непреднамеренно отключить эти оптимизации!

https://includeguardian.io/article/include-guards-and-their-optimizations

#cpp #programming

👉 @cpp_lib

Читать полностью…

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

👁‍🗨 Каких навыков ждут работодатели от С++ разработчиков в 2023 году?

👨‍💻 Ответ — навык разработки кроссплатформенного ПО на Qt и ОС Аврора. Особенно это важно для работы в госсекторе и компаниях, работающих с госсектором.

В OTUS заканчивается набор на онлайн-курс «Разработка прикладного ПО на Qt и ОС Аврора».

🚀 За 5 месяцев на курсе вы изучите:
🟠 структуру библиотеки Qt
🟠научитесь писать программы на Qt + QML
🟠 освоите широкий спектр технологий, которые необходимы для создания мобильных приложений на ОС Аврора

После обучения на курсе вы сможете войти в проекты где UI требуется сочетать с высокой вычислительной нагрузкой и/или ограниченными ресурсами, а также претендовать на вакансии в государственных компаниях и крупном бизнесе.

🔵Старт курса — 30 мая. Возможны разные способы оплаты курса.

👉 Пройдите вступительный тест, чтобы записаться в группу: https://otus.pw/H8XO/

Нативная интеграция. Информация о продукте www.otus.ru

Читать полностью…

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

Безопасное копирование, перемещение и уничтожение объектов в современном C++ по правилу «все или ничего»

Какие конструкторы нужны классу C++? Какие он генерирует сам? Как насчет различных операторов присваивания? А деструктор? Как не отстрелить себе ногу и без труда ориентироваться в этих водах?

Это и многое другое мы рассмотрим в этом видео, которое расскажет нам о простом правиле, которому нужно следовать при реализации классов в современном C++, - правиле "все или ничего". Мы погрузимся в причины его существования и посмотрим, как оно облегчает нам жизнь.

источник

#cpp #programming

👉 @cpp_lib

Читать полностью…

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

Разбираемся с использованием неблокируещего ввода-вывода в ОС Linux. Пишем пример сервера на голых системных вызовах

Как обычно пишут сервер, если не особо заботиться производительности? Программа запускается, затем начинает принимать входящие соединения от клиентов и для каждого клиента запускает новый поток, который занимается обслуживанием этого клиента. Если вы используете какой-нибудь, прости господи, Spring или Flask или там Poco, то он что-такое внутри себя и делает - разве что потоки можно переиспользовать, то есть брать из некого пула. Это всё довольно удобно, но не слишком эффективно. Скорее всего, ваши потоки, обслуживающие клиентов, живут недолго и большую часть времени ожидают либо получения данных от клиента, либо отправки их клиенту - то есть ждут возвращения системных вызовов. Создание потока ОС - довольно дорогая операция, как и переключение контекста между потоками ОС. Если вы хотите уметь обслуживать много клиентов эффективно, надо придумать что-то другое. Например, коллбеки. Но это довольно неудобно.

https://habr.com/ru/articles/733948/

#cpp #programming

👉 @cpp_lib

Читать полностью…

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

Устали от стандартных задач и ищете драйва в разработке? Переходите на Solidity — самый популярный язык в разработке децентрализованных систем 💰

Узнайте все о языке Solidity на открытом уроке, который состоится 25 мая в 20:00 мск. На занятии поговорим об особенностях этого языка, его нестандартном поведении, а также возможностях для разработчиков.

🚀 Вебинар приурочен к старту онлайн-курса «Solidity Developer» в OTUS. 

💻 На занятии мы разберем: 
- Почему важно изучать Solidity?
- Что можно создавать с помощью этого языка?
- Какие отличия Solidity от других языков программирования?
- Как перейти к разработке на Solidity с базовыми знаниями JS и С++?
- Какая зарплата у Solidity разработчиков?

Вебинар предназначен для разработчиков с опытом от года, фронтендерам, разрабатывающим web3 приложения, и организаторам блокчейн-стартапов.

Пройдите вступительный тест, чтобы участвовать 👉 https://otus.pw/0s4Y/

Нативная интеграция. Информация о продукте на otus.ru

Читать полностью…

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

👩‍💻 Не хватает мощностей при разработке на C++?

🚀 Приглашаем на экспресс-обзор современных инструментов разработки на плюсах, который состоится 31 мая в 20:00.

📢📢 На этой встрече вы сможете обменяться опытом с экспертом, а также узнать:
🔵Как автоматизировать сборку с помощью CMake, Bazel.
🔵Что такое пакетные менеджеры Conan и vcpkg и как их использовать.

Это открытое занятие является бесплатной пробной частью онлайн-курса OTUS “C++ Developer. Professional”.
Оплата курса возможна любым удобным для вас способом.

👉Чтобы записаться на урок, пройдите вступительное тестирование: https://otus.pw/aYdd/

Нативная интеграция. Информация о продукте www.otus.ru

Читать полностью…

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

C++ Software Design: Design Principles and Patterns for High-Quality Software
Автор: Klaus Iglberger (2022)

Хорошее проектирование программного обеспечения является залогом успеха вашего проекта. Но для этого необходимо иметь глубокое понимание последствий проектных решений и хороший обзор доступных альтернатив. С помощью этой книги опытные разработчики на C++ получат подробный, практический и не имеющий аналогов обзор проектирования программного обеспечения с помощью этого современного языка.

Клаус Иглбергер объясняет, как можно управлять зависимостями и абстракциями, улучшать изменяемость и расширяемость программных объектов, а также применять и реализовывать современные паттерны проектирования, которые помогут вам воспользоваться сегодняшними возможностями. Проектирование программного обеспечения - самый важный аспект программного проекта, поскольку он влияет на самые важные свойства программного обеспечения: сопровождаемость, изменяемость и расширяемость.

@cpp_knigi

Читать полностью…

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

⚙️ Курс «Реверсивный инжиниринг ПО под ОС Windows»

Старт: 5 июня
Длительность: 6 месяцев

🎓 Курс по реверсингу приложений под Windows позволяет изучить язык Ассемблера, анализировать приложения разной сложности и изучать образцы вредоносных приложений. Также рассматриваются различные техники, используемые исследователями.

ℹ️ Кому будет полезен курс:

✔️ Пентестерам, желающим лучше изучить направление реверсинга приложений
✔️ Вирусным аналитикам и исследователям кода занимающимся изучением вредоносного ПО
✔️ Программистам, разрабатывающим продукты в области ИБ или занимающимся разработкой ПО с повышенными требованиям к защищенности (промышленное, банковское ПО и т.д.)

*Для прохождения курса необходимы базовые знания реверса

🏆 Выдаём сертификат при успешной сдаче экзамена

В честь четвертой победы Codeby на Standoff, команда Академии дарит скидку 10% на оплату курса до 15 июня. Промокод: REWWIN0623

📌 Узнать подробнее о курсе

Читать полностью…

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

Как проверить, находится ли указатель в диапазоне памяти

https://devblogs.microsoft.com/oldnewthing/20170927-00/?p=97095

#cpp #programming

👉 @cpp_lib

Читать полностью…
Subscribe to a channel