fa
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

نمایش بیشتر

📈 تحلیل کانال تلگرام Библиотека C/C++ разработчика | cpp, boost, qt

کانال Библиотека C/C++ разработчика | cpp, boost, qt (@cppproglib) در بخش زبانی روسی بازیگری فعال است. در حال حاضر جامعه شامل 17 191 مشترک است و جایگاه 7 725 را در دسته فناوری و برنامه‌ها و رتبه 39 185 را در منطقه روسيا دارد.

📊 شاخص‌های مخاطب و پویایی

از زمان ایجاد در невідомо، پروژه رشد سریعی داشته و 17 191 مشترک جذب کرده است.

بر اساس آخرین داده‌ها در تاریخ 13 ژوئن, 2026، کانال فعالیت پایداری دارد. در ۳۰ روز گذشته تغییر اعضا برابر -16 748 و در ۲۴ ساعت گذشته برابر -1 بوده و همچنان دسترسی گسترده‌ای حفظ شده است.

  • وضعیت تأیید: تأیید نشده
  • نرخ تعامل (ER): میانگین تعامل مخاطب 9.38% است و در ۲۴ ساعت نخست پس از انتشار، محتوا معمولاً 4.93% واکنش نسبت به کل مشترکان کسب می‌کند.
  • دسترسی پست‌ها: هر پست به طور میانگین 1 613 بازدید دریافت می‌کند. در اولین روز معمولاً 848 بازدید جمع‌آوری می‌شود.
  • واکنش‌ها و تعامل: مخاطبان به‌طور فعال حمایت می‌کنند؛ میانگین واکنش به هر پست 7 است.
  • علایق موضوعی: محتوا بر موضوعات کلیدی مانند c++, навигация, компилятор, удалёнка, developer تمرکز دارد.

📝 توضیح و سیاست محتوایی

نویسنده این فضا را محل بیان دیدگاه‌های شخصی توصیف می‌کند:
Все самое полезное для плюсовика и сишника в одном канале. Как запустить своего ии-агента: https://clc.to/tvpmDQ По рекламе: @proglib_adv Для обратной связи: @proglibrary_feeedback_bot РКН: https://gosuslugi.ru/snet/67a5bac324c8ba6dcaa1ad17 #WXS...

به لطف به‌روزرسانی‌های پرتکرار (آخرین داده در تاریخ 14 ژوئن, 2026)، کانال همواره به‌روز و دارای دسترسی بالاست. تحلیل‌ها نشان می‌دهد مخاطبان به‌طور فعال با محتوا تعامل دارند و آن را به نقطه اثرگذاری مهم در دسته فناوری و برنامه‌ها تبدیل کرده‌اند.

17 191
مشترکین
-124 ساعت
-5 9977 روز
-16 74830 روز
آرشیو پست ها
🤔 очередной #дайджест по С++ 📥 Анализ приложений на C++ для оптимизации производительности — введение в анализ производител
🤔 очередной #дайджест по С++ 📥 Анализ приложений на C++ для оптимизации производительности — введение в анализ производительности программ на C++ 📥 Стремление к улучшению кода на C++ — что такое анализ потоков данных, и какие ошибки может находить CLion 📥 C++23: Удаление поддержки сборки мусора — сказ о поддержке сборки мусора, включенной в C++11 и окончательно удаленной в C++23 📥 C++23 chunk view и stride view — видео о новых представлениях (views), добавленных в C++23 📥 Шаблоны для уменьшения размера бинарника — использовании extern template для сокращения размеров бинарных файлов

🤔🎯 Что нового в .NET 8 .NET 8 вышел в релиз, значит можно начинать переносить свои проекты на новую версию. В этой статье рассматриваются новые улучшения и фишки: производительность, Native AOT, GC, новые типы, направленные на повышение производительности, NuGet Audit и прочее. Производительность Microsoft сказали, что представленный в прошлом году .NET 7 очень быстрый, но .NET 8 быстрее. Усовершенствования коснулись: JIT, GC, рефлексии, коллекции, LINQ, кодогенерации, сериализции и десериализции, примитивных типов и многого другого. Native AOT Native AOT использует ahead of time компилятор для компиляции IL в машинный код во время публикации self-contained приложения. В .NET 8 добавлена поддержка архитектур x64 и arm64 на macOS. Native AOT приложения включают в себя .NET runtime. Исходя из этого, они имеют больший размер по сравнению с обычными приложениями. В .NET 8 улучшили и этот аспект. Рассмотрение других ништяков релиза — вот #почитать

🧑‍💻⏳ Обработка строковых литералов во время компиляции С момента добавления constexpr можно многое делать во время компиляции. Одной из таких вещей является обработка строковых литералов. Поиск строк в бинарнике Если вы объявите переменную типа const char* str = «Hello World»;, строка «Hello World» будет в бинарнике. В Linux, macOS и Windows есть команда strings. (для Windows необходимо установить Sysinternals Suite) Запуск strings [your_binary] выведет список всех строк — «Hello World» должен быть среди них. Далее примеры кода и несколько фишек #гайд

🧑‍🍳📊 The Ranges Library в C++20 Благодаря библиотеке ranges работа с библиотекой STL стала намного удобнее. Прежде всего, алгоритмы библиотеки ranges ленивы, могут работать непосредственно с контейнером и могут быть закомпожены. Кроме того, библиотека ranges имеет несколько уникальных дизайнерских решений. Непосредственно в контейнере Библиотека ranges позволяет контейнеру, такому как std::ranges::sort, напрямую работать с контейнером. Напротив, классический std::sort работает с диапазоном, определенным двумя итераторами: std:sort(myVec.begin(), myVec.end()). Продолжение истории вот #гайд

🎢🚀 Диспетчер задач для микроконтроллера В программировании микроконтроллеров часто нужно написать простые тестировочные прошивки. При этом надо некоторые функции вызывать чаще, а некоторые реже. Для этого конечно можно запустить FreeRTOS, однако тогда код не будет переносим на другие RTOS, например Zephyr RTOS/TI-RTOS/RTEMS/Keil RTX/Azure RTOS или SafeRTOS. Потом прошивку как код часто приходится частично отлаживать на PC а там никакой RTOS в помине нет. Поэтому надо держать наготове какой-нибудь простенький универсальный переносимый кооперативный NoRTOS планировщик с минимальной диагностикой и возможностью в run-time отключать какие-то отдельные задачи для отладки оставшихся. Проще говоря нужен диспетчер задач для микроконтроллера. Углубленный разбор ожидает тут

forward_list::splice_after() Это встроенная функция в CPP STL, которая переносит элементы в диапазоне от first+1 до last из д
forward_list::splice_after() Это встроенная функция в CPP STL, которая переносит элементы в диапазоне от first+1 до last из данного forward_list в другой forward_list. Элементы вставляются после элемента, на который указывает позиция в параметре. Синтаксис:
forwardlist1_name.splice_after(position iterator, forwardlist2_name,first iterator, last iterator)
Параметры: функция принимает четыре параметра: position – позиция в forward_list, после которой должны быть вставлены новые элементы. forwardlist2_name – список, из которого должны быть вставлены элементы. first – итератор, после которого должна быть выполнена вставка. last – итератор, до которого должна быть выполнена вставка.

🤔 очередной #дайджест по С++ 🟢 С++ производительность и щепотка безопасности — обсуждение того, за что программисты любят C
🤔 очередной #дайджест по С++ 🟢 С++ производительность и щепотка безопасности — обсуждение того, за что программисты любят C++ 🟢 Как сравнить целые числа со знаком и без знака — cравнивать два числа должно быть легко, не так ли? Возможно, так и должно быть, но не в C++ 🟢 Устранение расхождений в истории git commit после операций переименования с учетом регистра — мучения с изменением значений git config core.ignorecase 🟢 Простая в реализации arena-friendly hash map — в статье демонстрируется методика создания хэш-мапов в сочетании с arena allocation 🟢 О хранении изображений в памяти с выравниванием — будет немножко кода на Си и ассемблере, пара LabVIEW скриншотов, а также базовые знания OpenCV

#memes Айтишники спешат с работы в пятницу вечером

Что используется для ручного написания таблицы подстановки?
Anonymous voting

🔥 Время прокачивать свои навыки и RustИ !!! 🫵 Проверь себя - пройди тест по Rust 🫵 Ответишь успешно — пройдёшь на курс «Ru
🔥 Время прокачивать свои навыки и RustИ !!! 🫵 Проверь себя - пройди тест по Rust 🫵 Ответишь успешно — пройдёшь на курс «Rust Developer. Professional» от Отус по специальной цене. Сегодня изучаешь Rust - завтра растет твоя ЗП! ➡️ ПРОЙТИ ТЕСТ: https://otus.pw/riQGm/ 💥 Бонусом за успешно пройденный тест, получишь доступ к записям лучших открытых уроков курса. Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru Erid 2Vtzqv76qoe

std::array и std::vector std::array — это обёртка вокруг обычного массива, фиксированного размера, а std::vector — это динамически расширяемый массив. std::array хранит свои данные в стековой памяти, а vector выделяет память в куче (динамическая память). У std::array в параметрах шаблона указывается тип хранимых элементов и размер массива. А у std::vector - тип элементов и ещё возможно указать аллокатор, который нужно использовать при выделении памяти (с помощью new). std::array чуть лучше по производительности в случае небольшого массива, чем std::vector, который содержит в себе несколько указателей, указывающих на выделенный в куче кусок памяти.

💹⚖️ Измерение частоты на STM32 Рассказ о различных методах измерения частоты прямоугольного сигнала с помощью микроконтроллера STM32. В процессе работы над одной из железок у автора возникла необходимость организовать несколько выводов, которые бы измеряли частоту входного сигнала. Опробовав несколько разных вариантов, он решил, что негоже примерам пылиться на задворках диска D и стоит ими поделиться с сообществом. Начальные условия: частота входного сигнала от 0 до 10 кГц. Микроконтроллер STM32F103C8T6, всем известная плата bluepill. Библиотека HAL. Источником сигнала, частота которого будет измеряться, для проверки работоспособности будет служить двухканальный генератор частоты JDS6600. Будет использовать модуль CH340G (Преобразователь USB — UART) для передачи данных в терминал (terminal v1.9b) для наглядности. В него будет посылаться полученное после обработки значение. Читайте дальше тут #туториал

🤓🧑‍🎓 Синтаксический разбор CSV строчек В программировании микроконтроллеров часто надо производить синтаксический разбор (парсинг) CSV строчек. CSV это просто последовательность символов, которые разделены запятой (или любым другим одиночным символом: ; | /). 1️⃣ CSV строчки можно, например, повстречать в NMEA протоколе от навигационных GNSS приемников. Вот пример NMEA протокола:
$GNGGA,102030.000,5546.95900,N,03740.69200,E,1,08,2.0,142.0,M,0.0,M,,*
$GNGLL,5546.95900,N,03740.69200,E,102030.000,A,A*
$GNGSA,A,3,10,16,18,20,26,27,,,,,,,4.8,2.0,4.3,1*
$GNGSA,A,3,19, , , , , ,,,,,,,4.8,2.0,4.3,4*
$GNGSA,A,3,82, , , , , ,,,,,,,4.8,2.0,4.3,2*
2️⃣ Потом, любой URL (например https://proglib.io/) это, в сущности, та же самая пресловутая CSV строчка, где разделитель это /. 3️⃣ Также компонент CSV позволит одной строчкой в UART-CLI консоли прошивки распознавать и запускать на исполнение последовательно сразу несколько shell команд. 4️⃣ Прошивка может запросто логировать на SD карту по SPI данные в CSV формате как в файл на FatFS. Потом этот текстовый *.csv файлик можно будет открыть на LapTop(е) любым процессором электронных таблиц. Продолжение здесь

Уже в эту субботу пройдет первая конференция от SberDevices по системной разработке — «Салют, OS DevConf!». Участников ждет м
Уже в эту субботу пройдет первая конференция от SberDevices по системной разработке — «Салют, OS DevConf!». Участников ждет много практики по разработке операционных систем и микроконтроллеров. Среди спикеров от руководители и ведущие разработчики команд SberDevices, «Лаборатория Касперского», «Открытая мобильная платформа», YADRO, «Сбер». В программе: — Как в операционной системе от SberDevices устроен процесс разработки на C++; — Инструменты для поддержания качества кода в операционных системах; — Опыт внедрения инструмента статического анализа кода Clang Tidy на поздней стадии проекта; — Разработка операционной системы на базе Debian Linux: почему лучше сделать своё, чем покупать у вендора. Конференция состоится 18 ноября в offline и online формате. Для участия необходимо зарегистрироваться по ссылке. Реклама. ПАО Сбербанк ИНН 7707083893. erid: 2SDnjcU9bsN

🚶👣 На пути из Web к Native Рассказ о трудностях, которые могут ожидать неопытного человека, который соблазнится нативным программированием. Имея небольшой опыт в веб-программировании, автору казалось, что все не так плохо. И так по началу и было. За вопрос он взялся основательно: без задачи — нет учебы. Он решил поставить перед собой большую цель: давным-давно, играя в ммо, наткнулся на бот-программу, так называемый пакетный кликер. Она отправляла запросы на сервер и заставляла персонажа выполнять в автоматическом режиме невообразимые вещи, что очень впечатлило. По заявлениям автора, он ее сделал всего за 3 часа. И вот, уже не маленький автор решил, что должен сделать так же. Бота выбрал по ряду причин: ➖ Работа с ассемблером. ➖ Какой-никакой GUI. ➖ Сборка и импорт библиотеки. ➖ Мечта детства. Начал с реверсинга, попал на форум Tuts4You и прошел челлендж, состоящий из 40ка reverse_me. Продолжение истории тут #почитать

#вопросы_с_собеседования Перед вами два примера кода для печати вектора. Есть ли преимущества использования одного или другого? Пример 1:
c++
vector vec;
/* ... .. ... */
for (auto itr = vec.begin(); itr != vec.end(); itr++) {
 itr->print();
}
Пример 2:
c++
vector vec;
/* ... .. ... */
for (auto itr = vec.begin(); itr != vec.end(); ++itr) {
 itr->print();
}
Хотя оба кода будут генерировать одинаковые выходные данные, пример 2 является более производительным вариантом. Это связано с тем, что оператор после инкремента itr++ обходится дороже, чем оператор перед инкрементом ++itr. Оператор пост-инкремента генерирует копию элемента, прежде чем приступить к увеличению элемента и возврату копии. Более того, большинство компиляторов автоматически оптимизируют пример 1, неявно преобразуя его в пример 2.

🤔 Очередной #дайджест по С++ ✅ Использование переменных шаблонов для решения крошечной задачи — как шаблоны переменных могут
🤔 Очередной #дайджест по С++ ✅ Использование переменных шаблонов для решения крошечной задачи — как шаблоны переменных могут быть использованы для улучшения читаемости ✅ Создавайте надежные и защищенные программы на C++ — как и какие инструменты использовать для создания ✅ Язык Janet для смертных — раскрываются различные аспекты работы с языком, объяснение синтаксиса и некоторых приемов программирования ✅ Структурированная диагностика в новом окне — рассказ о безумно полезном инструменте, о котором не все знают ✅ Приключения ржавого — как выдрать экранчик из принтера и соорудить поделку😂