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

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

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

Для обратной связи: @proglibrary_feeedback_bot

РКН: https://gosuslugi.ru/snet/67a5bac324c8ba6dcaa1ad17
Download Telegram
🎅 Секретный Санта для айтишников от Proglib.academy

Весь этот год команда Академии запускала курсы для айтишников. А под Новый год мы запускаем новый курс по ИИ-агентам и ставим под ёлку самый свежий стек 2025 года и обучение проектированию автономных нейросетевых экосистем — от LLM и ReAct-циклов до мультиагентных систем, LangGraph, AutoGen и продакшн-практик.

🎁 Хотим дарить подарки и приглашаем вас поучаствовать в конкурсе:

1️⃣ Упомяните курс Академии у себя в блоге.
2️⃣ Пришлите скрин сюда.
3️⃣ Получите секретный промокод на 10 000 ₽ при оплате любого курса.

Подходит всё — соцсети, блоги, Telegram-каналы от 300 подписчиков и более.

🎄 Акция действует до Нового года.

Win-win, всё как мы любим!
1😁1
📕 Написал код на С++23, а он запустился на Windows 95...

Представь: пишешь код с модулями C++23 в Visual Studio 2026, жмёшь компиляцию... И получаешь exe для Windows 95.


Подробный разбор нестандартного подхода к ретро-программированию с использованием всех благ современного C++.

Основные шаги:

• компиляция только в 32-bit x86 с отключёнными исключениями и STL
• использование линкера от Visual C++ 6.0 для финальной сборки
• создание минимальной реализации std с базовыми контейнерами

Фокус на практическом применении — портирование проектов LDL и движка Arcanum на C++23 с сохранением поддержки Windows 98.

Актуально для разработчиков, которые создают новые игры, моды и улучшения для старых систем в рамках комьюнити вроде Old-Games.ru.

Главное преимущество — один и тот же код работает и на современной системе (для отладки), и на ретро-железе (для финального запуска).

👉 Статья

Навигация: ВакансииЗадачиСобесы

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

#свежак
1🔥8👾7👍31🥱1
WANTED: C++ ЭКСПЕРТ

Обвиняется в прямом управлении памятью и знании тёмных углов стандарта. Если ты выжил в мире плюсов и готов учить этому других — мы тебя ищем.

Приметы:

— в совершенстве владеет C/C++ (понимает логику Go или Java);
— умеет писать производительный и безопасный код;
— обладает терпением и талантом наставника;
— хочет выйти на большую аудиторию Proglib.

Награда:

— вознаграждение за твой вклад в обучение;
— статус признанного эксперта в комьюнити;
— поддержка твоего личного бренда.

Сдаться добровольно

P.S. Знаешь «плюсовика», который знает слишком много? Сдай его нам.
🔥2😁1
🐸 Подборка вакансий для C++-разработчиков за неделю

C++/Qt/QML-разработчик под Android (Транспорт) — от 250 000 ₽ Удалёнка

Senior C++ engineer («Разработка ядер рекламной платформы»)

C++ Developer (Real-Time Audio Processing) — от 288 000 и до 320 000₽ Удалёнка

Senior С++ Backend Developer (Поиск) — от 350 000 ₽ Удалёнка

Разработчик графических приложений Qt/С++ — от 150 000 и до 250 000 ₽ Удалёнка

System С++ developer — Офис (Москва)

Библиотека C/C++ разработчика
👍21🤩1
Литералы времени: пишите код, который читается

C++14 добавил user-defined literals для chrono. Это превращает магические числа в self-documenting код.

До:


std::this_thread::sleep_for(std::chrono::milliseconds(500));
std::chrono::seconds timeout(30);


После:

using namespace std::chrono_literals;

std::this_thread::sleep_for(500ms);
auto timeout = 30s;
auto delay = 1.5min; // 90000ms внутри


Полный список:

auto ns = 100ns;   // nanoseconds
auto us = 100us; // microseconds
auto ms = 100ms; // milliseconds
auto s = 100s; // seconds
auto min = 100min; // minutes
auto h = 100h; // hours


❗️Важно: Дробные литералы (1.5s) возвращают duration<double>, а не duration<int64_t>. Учитывайте при строгой типизации.

Добавьте using namespace std::chrono_literals; в каждый файл с chrono — читаемость кода скажет спасибо!

📍Навигация: ВакансииЗадачиСобесы

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

#под_капотом
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9
🧩 Задача на выходные: оптимизируй код

Код работает, но выглядит... не очень. С++20 даёт нам крутые инструменты для упрощения.

#include <vector>
#include <algorithm>
#include <iostream>

std::vector<int> filterAndTransform(const std::vector<int>& input) {
std::vector<int> filtered;
for (const auto& val : input) {
if (val % 2 == 0) {
filtered.push_back(val);
}
}

std::vector<int> result;
for (const auto& val : filtered) {
result.push_back(val * val);
}

return result;
}


Задача: Перепиши эту функцию используя ranges (C++20).

Бонус: Можно ли избежать промежуточных копирований?

✏️ Покажи свою версию в комментариях.


📍Навигация: ВакансииЗадачиСобесы

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

#междусобойчик
2👍1
AI-агенты и системное мышление: от протокола MCP до мультиагентности ⚙️

Разработка AI-систем требует понимания низкоуровневых протоколов и архитектурной точности. Мы научим вас строить экосистемы агентов, которые работают эффективно.

Технический стек:

— протокол MCP от Anthropic для обмена данными;
— паттерн ReAct (Reasoning + Acting) как основа логики агента;
— продвинутый RAG для работы с большими объёмами знаний;
— координация агентов через CrewAI и AutoGen.

Поймёте, как превратить тонны документов в базу знаний, доступную агентам за миллисекунды, и соберёте автономную группу ботов.

Освоить стек 2025 года
😁3
😎 Топ-вакансий для C++ разработчиков за неделю

C++ Developer

C++/Qt/QML-разработчик (Android)

C++ Team Lead

✍️ Еще больше топовых вакансий — в нашем канале C++ jobs

📍Навигация: ВакансииЗадачиСобесы

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

#буст
👍1
Forwarded from Библиотека программиста | программирование, кодинг, разработка
This media is not supported in your browser
VIEW IN TELEGRAM
🏜️ Итоги IT-рынка 2025: стагнация зарплат, кризис найма и прогноз на 2026 год

Если в 2025-м мы наблюдали «выравнивание» и урезание бюджетов, то следующий год рискует стать годом массовых сокращений.

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

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

🎁 Новогодняя акция: 3 курса по цене 1
🤝 Помощь с выбором курса

🐸 Библиотека программиста
Please open Telegram to view this post
VIEW IN TELEGRAM
😁7
😎 Интересное за 2025

Когда mutex — не панацея — от shared_mutex до lock-free атомиков, правильный выбор примитива синхронизации может изменить производительность на порядок


Inline static в классах — забудь про .cppC++17 позволяет избавиться от undefined reference при использовании static членов класса с помощью ключевого слова inline

ccache — компилятор кэш для ускорения пересборки проектов

Исходники Command & Conquer — компания Electronic Arts (EA) опубликовавала исходные коды нескольких частей культовой стратегической серии Command & Conquer

📍Навигация: ВакансииЗадачиСобесы

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

#буст
👍3
🎄 Поделитесь своим новогоднем настроением в комментариях (ну или хотя бы фото ёлки).

📍Навигация: ВакансииЗадачиСобесы

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

#междусобойчик
😁9
🍉 constexpr Christmas: Вычисляем ёлку в compile-time

Пока все загружают процессор рождественской анимацией, давайте нарисуем ёлку, которая существует только во время компиляции!

С constexpr в C++20 можно творить магию. Даже std::string и std::vector стали constexpr-friendly, что открывает безумные возможности.

#include <array>
#include <algorithm>
#include <iostream>

constexpr auto generate_tree(int height) {
constexpr int MAX_WIDTH = 100;
std::array<char, MAX_WIDTH * 10> tree{}; // Увеличим размер для хранения символов
int idx = 0;

for (int i = 0; i < height; ++i) {
int stars = i * 2 + 1; // Количество звездочек на уровне
int spaces = height - i - 1; // Количество пробелов перед звездочками

// Добавляем пробелы
for (int j = 0; j < spaces; ++j) {
tree[idx++] = ' ';
}

// Добавляем звездочки
for (int j = 0; j < stars; ++j) {
tree[idx++] = '*';
}

// Добавляем перевод строки
tree[idx++] = '\n';
}

tree[idx] = '\0'; // Завершающий нуль
return tree;
}


int main() {
constexpr auto my_tree = generate_tree(10);
std::cout << my_tree.data();

return 0;
}


📍Навигация: ВакансииЗадачиСобесы

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

#константная_правильность
🔥7👍3
🐸 Подборка вакансий для C++-разработчиков за неделю

C Developer — от 280 000 и до 330 000 ₽ Офис (Москва)

Разработчик C/C++ (Linux) — от 270 000 ₽ Офис (Москва)

C++ Developer — Офис (Новосибирск)

Разработчик С++ (Junior) — до 130 000 ₽ Офис (Москва)

📍Навигация: ВакансииЗадачиСобесы

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

#вакансии
👍1😁1
👻 Какие проблемы в коде?

Ответ: Если конструктор b бросит исключение, a утекает

📍Навигация: ВакансииЗадачиСобесы

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

#междусобойчик
👏5🤔21😁1
📰 Свеженькое из мира C++

Подготовили подборку самых интересных материалов за неделю о разных аспектах программирования и интересных проектах в мире C++.

😎 Интересное:

Литералы времени: пишите код, который читается — добавленные в C++14 user-defined literals для chrono. Это превращает магические числа в self-documenting код
constexpr Christmas: Вычисляем ёлку в compile-time — рисуем новогоднюю ёлочку в compile-time
Написал код на С++23, а он запустился на Windows 95... — разбор нестандартного подхода к ретро-программированию с использованием всех благ современного C++
Почему std::chrono::duration не хранит единицы измерения? — пример использования compile-time магии для задания числовых промежутков
От SFINAE к Concepts — история развития метапрограммирования
Почему throw не просто делает goto к catch-блоку? — разбор почему опасно кидать исключения в деструкторах

🔹📍Навигация: ВакансииЗадачиСобесы

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

#свежак
👍2