ru
Feedback
Библиотека C/C++ разработчика | cpp, boost, qt

Библиотека C/C++ разработчика | cpp, boost, qt

Открыть в Telegram

Все самое полезное для плюсовика и сишника в одном канале. Как запустить своего ии-агента: https://clc.to/tvpmDQ По рекламе: @proglib_adv Для обратной связи: @proglibrary_feeedback_bot РКН: https://gosuslugi.ru/snet/67a5bac324c8ba6dcaa1ad17 #WXSSA

Больше

📈 Аналитический обзор Telegram-канала Библиотека C/C++ разработчика | cpp, boost, qt

Канал Библиотека C/C++ разработчика | cpp, boost, qt (@cppproglib) языкового сегмента Русский является активным участником. Сейчас сообщество объединяет 16 865 подписчиков, занимая 7 489 место в категории Технологии и приложения и 38 926 место в регионе Россия.

📊 Показатели аудитории и динамика

С момента создания невідомо проект демонстрирует стремительный рост, собрав аудиторию из 16 865 подписчиков.

Согласно последним данным от 27 августа, 2026, канал показывает стабильную активность. За последние 30 дней изменение числа участников составило -85, а за последние 24 часа — 0, при этом общий охват остаётся высоким.

  • Статус верификации: Не верифицирован
  • Уровень вовлечённости (ER): Средний показатель вовлечённости аудитории составляет 8.63%. В первые 24 часа после публикации контент обычно набирает N/A% реакций от общего числа подписчиков.
  • Охват публикаций: В среднем каждый пост получает 1 455 просмотров. В течение первых суток публикация набирает 0 просмотров.
  • Реакции и взаимодействия: Аудитория активно поддерживает контент: среднее количество реакций на один пост — 3.
  • Тематические интересы: Контент сосредоточен на ключевых темах, таких как c++, навигация, компилятор, удалёнка, developer.

📝 Описание и контентная политика

Автор описывает ресурс как площадку для выражения субъективного мнения:
Все самое полезное для плюсовика и сишника в одном канале. Как запустить своего ии-агента: https://clc.to/tvpmDQ По рекламе: @proglib_adv Для обратной связи: @proglibrary_feeedback_bot РКН: https://gosuslugi.ru/snet/67a5bac324c8ba6dcaa1ad17 #WXS...

Благодаря высокой частоте обновлений (последние данные получены 28 августа, 2026) канал поддерживает актуальность и высокий уровень охвата публикаций. Аналитика показывает, что аудитория активно взаимодействует с контентом, что делает его важной точкой влияния в категории Технологии и приложения.

16 865
Подписчики
Нет данных24 часа
-147 дней
-8530 день
Архив постов
🍴 Макросы vs Inline: битва прошлого века В legacy коде до сих пор встречаются макросы вместо inline функций. И это проблема. Макросы — это текстовая подстановка препроцессором до компиляции. Классический пример:
cpp #define SQUARE(x) x*x
Выглядит невинно, но вызов SQUARE(a+b) развернется в a+b*a+b вместо (a+b)*(a+b). Проблемы с приоритетом операций, отсутствие type safety, невозможность отладки — список можно продолжать. Inline функции решают все эти проблемы. Они проверяются компилятором на типы, поддерживают перегрузку, могут использовать пространства имен и классы. Отладчик понимает их как обычные функции. А современные компиляторы оптимизируют их так же эффективно, как макросы, но безопаснее. Единственное преимущество макросов — работа с любыми типами без шаблонов. Но с появлением constexpr и шаблонов в C++11/14/17 даже это преимущество исчезло. Вы всё ещё пишете макросы для "быстрых" функций или давно перешли на inline/constexpr? Библиотека C/C++ разработчика #междусобойчик

🔥 Inline static в классах — забудь про .cpp
Сколько раз ты забывал добавить определение static члена в .cpp, и компилятор радостно выдавал undefined reference?
С C++17 можно просто добавить inline к static переменной класса, и всё работает. Особенно круто это для счётчиков, кешей и паттерна Registry.
// До C++17
class Logger {
public:
    static std::ofstream log_file; // объявление
    static int message_count;       // объявление
};
// В .cpp обязательно нужны определения:
// std::ofstream Logger::log_file{"app.log"};
// int Logger::message_count = 0;

// С C++17
class Logger {
public:
    inline static std::ofstream log_file{"app.log"};
    inline static int message_count = 0;
    inline static std::mutex log_mutex;
    
    static void log(const std::string& msg) {
        std::lock_guard lock(log_mutex);
        log_file << "[" << message_count++ << "] " << msg << '\n';
    }
};
// Никаких дополнительных файлов!
❗️Теперь весь класс может жить в заголовочном файле, что идеально для template классов и header-only библиотек. Инициализация происходит при первом использовании, потокобезопасно и предсказуемо. 🐸 Рефактори свои старые классы — убери лишние .cpp файлы и наслаждайся чистым кодом. Библиотека C/C++ разработчика #шаблонный_код

📊 А правда, что математика в Data Science не нужна? Нет. Без неё вы не пройдёте собес и не поймёте, почему модель ведёт себя
📊 А правда, что математика в Data Science не нужна? Нет. Без неё вы не пройдёте собес и не поймёте, почему модель ведёт себя странно. Линал, матан и вероятности — это база, без которой работа в ML превращается в угадайку. 🔥 Эту базу можно собрать за 2 месяца на экспресс-курсе «Математика для Data Science». 👩‍🏫 Кто ведёт курс:Мария Тихонова PhD, руководитель исследовательского направления в SberAI, доцент ВШЭ. → Диана Миронидис Преподаватель ВШЭ, автор научпоп-материалов по математике для блога МТС. → Ксения Кондаурова Преподаватель преподаватель T-Банка, автор курсов ЦУ и Edutoria. → Маргарита Бурова Академический руководитель программ по аналитике и ML, Wildberries & Russ. 🎁 Что сейчас доступно: → бесплатный тест, чтобы узнать свой уровень математики; → скидка 40% до 30 ноября; → если оплатить до конца ноября, курс «Базовая математика» в подарок. 👉 Пишите менеджеру, если хотите попасть в поток

Что произошло с триграфами в C++17?
Anonymous voting

Сколько раз гарантированно прочитается x?
Anonymous voting

🤝 Перестаньте ждать, пока вас найдут: как самому выходить на фаундеров и получать офферы Рекрутеры тянут неделями, ATS теряе
🤝 Перестаньте ждать, пока вас найдут: как самому выходить на фаундеров и получать офферы Рекрутеры тянут неделями, ATS теряет резюме, а фидбека вообще можно не дождаться. Совсем другая история — написать напрямую CTO или тимлиду: ответ приходит за день-два, а созвон назначают сразу. Учимся находить технических лидеров стартапов и продуктовых компаний и писать так, чтобы точно получить ответ. 👉 Статья Библиотека C/C++ разработчика #буст

📰 Свеженькое из мира C++ Подготовили подборку самых интересных материалов за неделю о разных аспектах программирования и инт
📰 Свеженькое из мира C++ Подготовили подборку самых интересных материалов за неделю о разных аспектах программирования и интересных проектах в мире C++. 😎 Полезное:Callback chain (цепочка обработчиков) — реализация Chain of Responsibility через лямбды • Лямбды в STL: где они сияют — применение лямбд в STL • std::flat_map в C++23 — адаптеры std::flat_map и std::flat_setЧто происходит при копировании std::array? — разбор того, что происходит при копировании std::array 🔥 Интересные проекты:XTML: минималистичный C++‑движок для HTML‑шаблонов — утилита написанная на C++, предназначенная для обработки шаблонных файлов и генерации динамического HTML • include-what-you-use — очистка include директив — инструмент от Google, который анализирует какие заголовочные файлы реально используются и предлагает минимальный набор includes Библиотека C/C++ разработчика #свежак

Что происходит, когда профилирование показывает, что ветка с [[unlikely]] выполняется в 90% случаев?
Anonymous voting

🎉 Большая распродажа Proglib Academy — минус 40% на всё! 📚 Выбирай свой курс: ▫️ «Экспресс-курс по математике для DS» — пол
🎉 Большая распродажа Proglib Academy — минус 40% на всё! 📚 Выбирай свой курс: ▫️ «Экспресс-курс по математике для DS» — получи фундамент для построения успешной карьеры в Data Science ▫️ «Математика для DS» — для тех, кто хочет уверенно работать с данными; ▫️ «Основы Python» — чтобы начать писать код с нуля; ▫️ «Алгоритмы и структуры данных» — для будущих инженеров; ▫️ «Специалист по ИИ» или «AI-агенты», или «Машинное обучение» — для тех, кто хочет прокачаться в ИИ. ▫️ «Архитектуры и шаблоны проектирования» — чтобы писать гибкий, масштабируемый код как мидл+ разработчик. ▫️ «Основы IT для непрограммистов» — для тех, кто хочет понимать, как устроены технологии, не будучи разработчиком. 🎁 Бонусы ноября: ▫️ Розыгрыш MacBook Pro 14 — купи любой курс и пройди 2 недели обучения до 30 ноября. ▫️ Бесплатный тест по математике — за 5 минут покажет, какие темы стоит подтянуть перед DS. 👉 Выбрать курс со скидкой

🍒 std::generator — ленивые последовательности в стандарте
Писал итераторы с кучей boilerplate для ленивого чтения? Или тащил ranges::views для простых генераторов?
C++23 добавляет std::generator — coroutine-based ленивые последовательности. Пишешь как обычную функцию, получаешь итератор. Идеально для парсеров, ленивого чтения файлов, бесконечных последовательностей.
#include <generator>
#include <print>
#include <fstream>
#include <string>
#include <optional>

// Простой генератор чисел Фибоначчи
std::generator<uint64_t> fibonacci(size_t count) {
    uint64_t a = 0, b = 1;
    
    for (size_t i = 0; i < count; ++i) {
        co_yield a;
        auto next = a + b;
        a = b;
        b = next;
    }
}

// Ленивое чтение строк из файла
std::generator<std::string> read_lines(const std::string& filename) {
    std::ifstream file(filename);
    std::string line;
    
    while (std::getline(file, line)) {
        co_yield line;
    }
}

// Генератор простых чисел (бесконечный)
std::generator<uint64_t> primes() {
    co_yield 2;
    
    std::vector<uint64_t> found_primes;
    uint64_t candidate = 3;
    
    while (true) {
        bool is_prime = true;
        for (auto p : found_primes) {
            if (p * p > candidate) break;
            if (candidate % p == 0) {
                is_prime = false;
                break;
            }
        }
        
        if (is_prime) {
            found_primes.push_back(candidate);
            co_yield candidate;
        }
        
        candidate += 2;
    }
}

// Генератор с трансформацией
std::generator<int> squares(int n) {
    for (int i = 0; i < n; ++i) {
        co_yield i * i;
    }
}

void demo() {
    // Первые 10 чисел Фибоначчи
    std::print("Fibonacci: ");
    for (auto num : fibonacci(10)) {
        std::print("{} ", num);
    }
    std::println("");
    
    // Первые 20 простых
    std::print("Primes: ");
    size_t count = 0;
    for (auto prime : primes()) {
        std::print("{} ", prime);
        if (++count >= 20) break;
    }
    std::println("");
    
    // Квадраты
    std::print("Squares: ");
    for (auto sq : squares(5)) {
        std::print("{} ", sq);
    }
    std::println("");
}
❗️ Используй generator вместо ручного написания итераторов для ленивых последовательностей. Память выделяется только под state coroutine. Можно делать бесконечные последовательности без риска. Библиотека C/C++ разработчика #под_капотом

🐸 Подборка вакансий для C++-разработчиков за неделю Разработчик C++ — от 230 000 и до 250 000 ₽ Удалёнка Middle C++ Developer (Core) — от 200 000 ₽ Удалёнка Lead C++ Software Engineer (Gameplay) — Удалёнка С++ Tools Developer — Гибрид (Москва) Team Lead C++ — до 400 000 ₽ Удалёнка, гибрид (Москва) Разработчик С++/ QML — Офис (Москва) Библиотека C/C++ разработчика

🤖 AI сейчас на пике — и математика снова в центре внимания.
«На конференции AIJ только и разговоров, что о AI и математике. Ведь в основе генеративных моделей Gen AI лежит фундаментальная математика.»
Одна из топовых экспертов, кто сегодня участвует на AIJ, преподаёт у нас. Мария Тихонова — PhD по Computer Science, руководитель направления в SberAI и доцент ВШЭ. Она работает с LLM каждый день и объясняет математику так, как она реально применяется в AI. 🔥 Экспресс-курс «Математика для DS» — 8 недель, чтобы закрыть пробелы и уверенно проходить собесы. 🎁 До 30 ноября: → скидка 40% → курс «Школьная математика» в подарок при оплате → бесплатный тест на знание основ математики 👉 Записаться на курс

Видеосообщение00:42

Какое главное преимущество spanstream перед stringstream?
Anonymous voting

🍕 include-what-you-use — очистка include директив
Ваш файл включает половину стандартной библиотеки, а использует только std::vector?
IWYU (include-what-you-use) — инструмент от Google, который анализирует какие заголовочные файлы реально используются и предлагает минимальный набор includes. Ускоряет компиляцию и делает зависимости явными. 🍴 Установка:
# Ubuntu
sudo apt install iwyu

# Из исходников с нужной версией clang
git clone https://github.com/include-what-you-use/include-what-you-use.git
✏️ Использование:
# Анализ файла
include-what-you-use main.cpp

# С применением исправлений
include-what-you-use main.cpp 2>&1 | fix_includes.py

# Для всего CMake проекта
cmake -DCMAKE_CXX_INCLUDE_WHAT_YOU_USE=include-what-you-use ..
❗️ Основные проблемы, которые находит: • Лишние includes — файлы, которые не используются • Транзитивные includes — зависимости через другие заголовки • Forward declarations — где можно заменить include на forward decl • Неполные includes — когда используется тип, но не включён его заголовок ✏️ Github Библиотека C/C++ разработчика #под_капотом

😵‍💫 Усиль свои позиции на собесе в Data Science знаниями математики! Чем важна математика расскажет Мария Тихонова - кандидат компьютерных наук, руководитель исследовательского направления SberAI, доцент факультета компьютерных наук и преподаватель НИУ ВШЭ на курсе «Математика для Data Science» от Proglib Academy. 👀 Мария - человек, который реально работает с LLM и делает так, чтобы модели понимали человеческую речь, а не делали вид. 📌 Добавь в свое портфолио проект, выделись среди конкурентов Курс предусматривает выполнение практического проекта с фидбеком от экспертов. За проект можно взять темы: • обучите градиентный спуск для предсказания цен на квартиры • создадите классификатор тональности или тематики текста • построите простую рекомендательную систему на матричных разложениях Бонусы: - скидка 40% до 30 ноября - если оплатить до конца ноября, получите курс «Базовая математика» в подарок ➡️ Пройти бесплатный тест на знание математики 👇👇👇 Записаться на курс

Видеосообщение00:29