Библиотека C/C++ разработчика | cpp, boost, qt
21K subscribers
1.57K photos
40 videos
16 files
3.74K links
Все самое полезное для плюсовика и сишника в одном канале.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/d6cd2932

Наши каналы: https://yangx.top/proglibrary/9197

РКН: https://gosuslugi.ru/snet/67a5bac324c8ba6dcaa1ad17
加入频道
🤔 очередной #дайджест по С++

🔻 Книга «Разработка высокочастотных торговых систем с помощью основ C++ или Java» — как построить высокочастотную торговую систему из сложных технологических компонентов, подкрепленных точными данными

🔻 Первый выпуск мультимедийной библиотеки LDL c поддержкой старых систем — вперед в прошлое и библиотека Little DirectMedia Layer

🔻 Фильтруем логи санитайзеров и valgrind на примере приложения с Qt — настройка санитайзеров и valgrind для логирования ошибок, связанных с интересующими библиотеками

🔻 Как добавить non-copyable и non-movable объект в std::map или std::unordered_map — как мы можем поместить некопируемый неперемещаемый объект в ассоциативный контейнер

🔻 Physical Units и System of Quantities — о библиотеке mp-units, кандидате на включение в C++29
#вопросы_с_собеседования

Что будет выведено на экран?


#include <iostream>

int a = 4;

int &f(int x){
a = a + x;
return a;
}

int main(void){
int t = 5;
std::cout << f(t) << std::endl;
f(t) = 20;
std::cout << f(t) << std::endl;
t = f(t);
std::cout << f(t) << std::endl;
}


В первом случае на печать выведется 9, потому что функция f принимает параметр t = 5, внутри функции к глобальной переменной a прибавляется 5, теперь a = 9, а f возвращает ссылку на неё и печатается значение a, то есть 9.

Далее неважно, что происходит внутри функции, важно, что возвращаемой ссылке на a присваивается 20, значит a = 20. Переменная t не поменяла своё значение, так как в функцию она передается по значению, а не по ссылке.

Затем опять вызываем f(5), при этом a = 20, a = 20 + 5, на печати увидим число 25.

Теперь присваиваем t значение a (в этот момент a = 25 + 5), значит, t станет равно 30.

И, наконец, последняя печать. Вызываем f(30), a = 30 + 30, и возвращается значение 60.
🧑‍💻 Статьи для IT: как объяснять и распространять значимые идеи

Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.

Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.

Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.

👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
📯Внимание всем отважным героям и искателям приключений!

«Библиотеки Программиста» с гордостью представляет новую захватывающую игру — «Битва с Драконом». Выберите своих персонажей и сразитесь с древним Крылатым Ужасом Бурлопиворогом в эпическом поединке!

Мы предлагаем вам взять под свой контроль хитроумного изобретателя или ловкого вора.

💎Победителей ждет почет, уважение и награда! Итак, кто осмелится бросить вызов Бурлопиворогу? Начните свою «Битву с Драконом»!
💩💩 Верле: разрешаем коллизии

Сложная, но очень занятная статья про написание некоего подобия простейшего физического движка на базе физики тканей и моделирования физики твердых тел.

Тут вам и формулы и куча кода - все, как вы любите 🏖

Изучить

#гайд
Please open Telegram to view this post
VIEW IN TELEGRAM
📚 Qt 6. Разработка оконных приложений на C++ (2022)

✍️ Автор: Прохоренок Н.А.

📃 Страниц: 512

Описываются базовые возможности библиотеки Qt, позволяющей создавать приложения с графическим интерфейсом на языке C++. Книга ориентирована на тех, кто уже знаком с языком программирования C++ и хотел бы научиться разрабатывать оконные приложения. Рассматриваются способы обработки событий, управление свойствами окна, создание формы, а также все основные компоненты (кнопки, текстовые поля, списки, таблицы, меню и др.) и варианты их размещения внутри окна. Книга содержит большое количество практических примеров, помогающих начать разрабатывать приложения с графическим интерфейсом самостоятельно.

Что внутри:
🔸Управление окном приложения
🔸Обработка сигналов и событий
🔸 Размещение компонентов внутри окна
🔸 Основные компоненты
🔸 Списки и таблицы
🔸 Работа с графикой и изображениями
🔸 Графическая сцена
🔸 Диалоговые окна
🔸 SDI и MDI приложения
🔸 Редактор Qt Creator
🤔🤷‍♂️ Как и зачем мы парсим XML

Большинство разработчиков рано или поздно сталкиваются с XML. Этот язык разметки настолько глубоко вошел в нашу жизнь, что сложно представить систему, в которой не используется он сам или его подмножества. Разбор XML — достаточно типовая задача, но даже в ней можно выделить несколько основных подходов. В этой статье автор расскажет, зачем ему потребовалось парсить XML, какие подходы он опробовал, а заодно продемонстрирует замеры производительности для самых популярных реализаций на C++.

Читать статью

#почитать
#вопросы_с_собеседования

Что такое явное и неявное приведение типов в С++?

Явное приведение типов в C++ происходит, когда программист явно указывает, что значение одного типа должно быть преобразовано в значение другого типа. Это делается с помощью операторов приведения типов, таких как static_cast, dynamic_cast, const_cast и reinterpret_cast.

Неявное приведение типов в C++ происходит автоматически, когда компилятор обнаруживает, что значение одного типа используется в контексте, где ожидается значение другого типа. Например, если вы пытаетесь присвоить значение типа int переменной типа double, компилятор автоматически преобразует значение int в значение double.
⚡️Свершилось: канал с книгами только по C++

Мы создали для вас канал с книгами по C и C++, куда будем публиковать самые полезные книги для сишников. Подписывайтесь!

👉Книги для C/C++ разработчиков
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 очередной #дайджест по С++

🔸 Как выбрать тимлида в команду — на что смотреть, как сделать выбор, как построить свое развитие, как продемонстрировать руководителям?

🔸 Разработка расширения для PHP на C++ — хуки встроенных функций и методов

🔸 Как войти в айти за час — с нуля, на языке с++ Win32 (графические приложения) «для самых маленьких»

🔸 Концепция RAII — про парадигму управления ресурсами, которая способствует безопасности и эффективности кода

🔸 Верле: разрешаем коллизии. Продолжение — продолжение занимательной истории про шарики
🎉🎉 QIWI SERVER PARTY 9.0

14 декабря в 17:30 состоится митап для тех, кто хочет узнать об опыте больших IT-компаний в реализации современных подходов и решении насущных проблем. Своими историями поделятся спикеры из QIWI, Яндекса и Альфа-Банка.

Программа:

Павел Черняк — Нельзя просто так взять и обновить
В этом докладе автор покажет коллекцию заботливо отобранных граблей, по которым пришлось пройти при обновлении одного из монолитных процессингов QIWI. Если вы хотите обновиться до Java 17 с Java 8 / Java 11, то узнаете о возможных проблемах и получите решения для них. Вишенкой — про переход на новый Spring Framework 6.

Андрей Свиридов — Как TDD поможет лучше работать
Расскажет, как Test Driven Development поможет решить ежедневные проблемы разработчиков. Если вы подумывали использовать TDD, но почему-то сомневались, то этот доклад станет хорошей стартовой точкой».

Дмитрий Некрылов — Защищаем пользователей от раздвоения конференций
Иногда медиасерверы падают. Автохилинг пытается подменить их, но пользователи могут оказаться на разных медиасерверах, и конференции раздваиваются. Защититься от такого можно с помощью математически корректной и высокопроизводительной реализации конечного автомата на Java и SQL.
В докладе как раз и рассмотрите лучшие практики, которые помогли автору решить задачу с минимальной нагрузкой на систему.

Самвел Барсегян — Инфраструктурная платформа QIWI

В этом докладе автор расскажет, какое место в современном IT занимает DevOps и как его прикладное применение привело к формированию нового технологического подхода — Platform engineering. А ещё вы узнаете, как в QIWI применяется этот подход, разрабатываются и поддерживаются инструменты самообслуживания для IT-специалистов.

Регистрация тут

#мероприятие
Разберем простенькую задачку уровня Junior
Функция remove_if

Функция remove_if() используется для удаления из списка всех значений, которые соответствуют истине предикату или условию, заданному в качестве параметра функции.

Функция выполняет итерацию по каждому члену контейнера списка и удаляет все элементы, которые возвращают true для предиката.
📚 C++ in One Hour a Day, Sams Teach Yourself

✍️ Автор: Siddhartha Rao
📃 Страниц: 793

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

Что внутри:
🔸 Освоите основы C++ и объектно-ориентированного программирования;
🔸 Поймете, как фичи C++ помогают писать компактный и эффективный код с использованием лямбда-выражений;
🔸 Изучите передовой опыт и научитесь избегать ошибок, используя полезные правила;
🔸 Изучите стандартную библиотеку шаблонов, включая контейнеры и алгоритмы, используемые в большинстве реальных приложений;
🔸 Проверите свои знания и опыт с помощью упражнений в конце каждого урока.
Самые полезные каналы для программистов в одной подборке!

Сохраняйте себе, чтобы не потерять 💾

🔥Для всех

Библиотека программиста — новости, статьи, досуг, фундаментальные темы
Книги для программистов
IT-мемы
Proglib Academy — тут мы рассказываем про обучение и курсы

#️⃣C#

Библиотека шарписта
Библиотека задач по C# — код, квизы и тесты
Библиотека собеса по C# — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Вакансии по C#, .NET, Unity Вакансии по PHP, Symfony, Laravel

☁️DevOps

Библиотека devops’а
Вакансии по DevOps & SRE
Библиотека задач по DevOps — код, квизы и тесты
Библиотека собеса по DevOps — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования

🐘PHP

Библиотека пхпшника
Вакансии по PHP, Symfony, Laravel
Библиотека PHP для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по PHP — код, квизы и тесты

🐍Python

Библиотека питониста
Вакансии по питону, Django, Flask
Библиотека Python для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Python — код, квизы и тесты

Java

Библиотека джависта — полезные статьи по Java, новости и обучающие материалы
Библиотека Java для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Java — код, квизы и тесты
Вакансии для java-разработчиков

👾Data Science

Библиотека Data Science — полезные статьи, новости и обучающие материалы
Библиотека Data Science для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Data Science — код, квизы и тесты
Вакансии по Data Science, анализу данных, аналитике, искусственному интеллекту

🦫Go

Библиотека Go разработчика — полезные статьи, новости и обучающие материалы по Go
Библиотека Go для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Go — код, квизы и тесты
Вакансии по Go

🧠C++

Библиотека C/C++ разработчика — полезные статьи, новости и обучающие материалы по C++
Библиотека C++ для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по C++ — код, квизы и тесты
Вакансии по C++

💻Другие профильные каналы

Библиотека фронтендера
Библиотека мобильного разработчика
Библиотека хакера
Библиотека тестировщика

💼Каналы с вакансиями

Вакансии по фронтенду, джаваскрипт, React, Angular, Vue
Вакансии для мобильных разработчиков
Вакансии по QA тестированию
InfoSec Jobs — вакансии по информационной безопасности

📁Чтобы добавить папку с нашими каналами, нажмите 👉сюда👈

🤖Также у нас есть боты:
Бот с IT-вакансиями
Бот с мероприятиями в сфере IT

Мы в других соцсетях:
🔸VK
🔸YouTube
🔸Дзен
🔸Facebook *
🔸Instagram *

* Организация Meta запрещена на территории РФ
🔟🏢 ТОП-10 российских IT-работодателей

Рейтинг работодателей, которые могут конкурировать по условиям труда с лидерами рынка.

Читать статью

#почитать