fa
Feedback

فریب کلاهبرداران را نخورید! تل‌متریو این کانال‌ها را شناسایی و برچسب‌گذاری می‌کند 👉 برای مشاهده برچسب، اشتراک تهیه کنید

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

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

رفتن به کانال در Telegram

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

نمایش بیشتر
7 189
مشترکین
اطلاعاتی وجود ندارد24 ساعت
-27 روز
-2330 روز
جذب مشترکین
اکتبر '26
اکتبر '26
+62
در 0 کانال‌ها
سپتامبر '26
+61
در 0 کانال‌ها
Get PRO
اوت '26
+53
در 0 کانال‌ها
Get PRO
ژوئیه '26
+39
در 0 کانال‌ها
Get PRO
ژوئن '26
+72
در 0 کانال‌ها
Get PRO
مه '26
+79
در 2 کانال‌ها
Get PRO
آوریل '26
+85
در 0 کانال‌ها
Get PRO
مارس '26
+80
در 0 کانال‌ها
Get PRO
فوریه '26
+95
در 0 کانال‌ها
Get PRO
ژانویه '26
+90
در 0 کانال‌ها
Get PRO
دسامبر '25
+80
در 1 کانال‌ها
Get PRO
نوامبر '25
+138
در 40 کانال‌ها
Get PRO
اکتبر '25
+134
در 2 کانال‌ها
Get PRO
سپتامبر '25
+158
در 36 کانال‌ها
Get PRO
اوت '25
+316
در 2 کانال‌ها
Get PRO
ژوئیه '25
+255
در 27 کانال‌ها
Get PRO
ژوئن '25
+270
در 19 کانال‌ها
Get PRO
مه '25
+141
در 45 کانال‌ها
Get PRO
آوریل '25
+178
در 37 کانال‌ها
Get PRO
مارس '25
+140
در 38 کانال‌ها
Get PRO
فوریه '25
+215
در 31 کانال‌ها
Get PRO
ژانویه '25
+207
در 33 کانال‌ها
Get PRO
دسامبر '24
+240
در 34 کانال‌ها
Get PRO
نوامبر '24
+218
در 32 کانال‌ها
Get PRO
اکتبر '24
+255
در 29 کانال‌ها
Get PRO
سپتامبر '24
+309
در 28 کانال‌ها
Get PRO
اوت '24
+197
در 18 کانال‌ها
Get PRO
ژوئیه '24
+162
در 1 کانال‌ها
Get PRO
ژوئن '24
+215
در 24 کانال‌ها
Get PRO
مه '24
+207
در 19 کانال‌ها
Get PRO
آوریل '24
+258
در 0 کانال‌ها
Get PRO
مارس '24
+280
در 21 کانال‌ها
Get PRO
فوریه '24
+324
در 19 کانال‌ها
Get PRO
ژانویه '24
+312
در 23 کانال‌ها
Get PRO
دسامبر '23
+220
در 25 کانال‌ها
Get PRO
نوامبر '23
+202
در 18 کانال‌ها
Get PRO
اکتبر '23
+212
در 19 کانال‌ها
Get PRO
سپتامبر '23
+195
در 0 کانال‌ها
Get PRO
اوت '23
+159
در 0 کانال‌ها
Get PRO
ژوئیه '23
+185
در 0 کانال‌ها
Get PRO
ژوئن '23
+224
در 0 کانال‌ها
Get PRO
مه '23
+173
در 0 کانال‌ها
Get PRO
آوریل '23
+146
در 0 کانال‌ها
Get PRO
مارس '23
+116
در 0 کانال‌ها
Get PRO
فوریه '23
+184
در 0 کانال‌ها
Get PRO
ژانویه '23
+361
در 0 کانال‌ها
Get PRO
دسامبر '22
+193
در 0 کانال‌ها
Get PRO
نوامبر '22
+135
در 0 کانال‌ها
Get PRO
اکتبر '22
+244
در 0 کانال‌ها
Get PRO
سپتامبر '22
+269
در 0 کانال‌ها
Get PRO
اوت '22
+307
در 0 کانال‌ها
Get PRO
ژوئیه '22
+548
در 0 کانال‌ها
Get PRO
ژوئن '22
+1 976
در 0 کانال‌ها
تاریخ
رشد مشترکین
اشارات
کانال‌ها
26 اکتبر+2
25 اکتبر+2
24 اکتبر+3
23 اکتبر+3
22 اکتبر+2
21 اکتبر+1
20 اکتبر+2
19 اکتبر+5
18 اکتبر+4
17 اکتبر+2
16 اکتبر+1
15 اکتبر+2
14 اکتبر+1
13 اکتبر+8
12 اکتبر+3
11 اکتبر+2
10 اکتبر0
09 اکتبر+1
08 اکتبر+3
07 اکتبر+1
06 اکتبر0
05 اکتبر+1
04 اکتبر+4
03 اکتبر0
02 اکتبر+5
01 اکتبر+4
پست‌های کانال
Продвинутое использование препроцессора в C и C++ Зачастую, в проектах ограничивается использование препроцессора по следующи
Продвинутое использование препроцессора в C и C++ Зачастую, в проектах ограничивается использование препроцессора по следующим причинам: — Он не похож на весь остальной язык; — Макросы могут возвращать неполные синтаксические конструкции, или вовсе различные, в зависимости от параметров. Ввиду перечисленных особенностей, читать код с активным использованием препроцессора зачастую становится на порядок сложнее кода без него. Со всеми его недостатками, инструмент есть в языке и достоин изучения. https://habr.com/ru/companies/timeweb/articles/928598/ 📲 Мы в MAX #cpp #programming 👉 @cpp_lib

2
Универсальная С++ фабрика объектов: для Qt и не только Меня зовут Михаил Полукаров, я занимаюсь разработкой Desktop-версии ко
Универсальная С++ фабрика объектов: для Qt и не только Меня зовут Михаил Полукаров, я занимаюсь разработкой Desktop-версии корпоративного супераппа для совместной работы VK Teams. Если вы тоже работали с большими проектами, где активно применяются объектно-ориентированные паттерны проектирования, то наверняка сталкивались с паттернами проектирования Factory Method или AbstractFactory. В процессе разработки я неоднократно ловил себя на мысли, что часто пишу однотипный код таких фабрик, и задумался о том, как можно было бы избежать таких самоповторений. В этой статье я покажу, как сделать универсальную фабрику объектов, покрывающую большую часть потребностей, следующую принципам DRY (Don’t Repeat Yourself), а также как можно использовать некоторые «фишки» новых стандартов С++. https://habr.com/ru/companies/vktech/articles/932358/ 📲 Мы в MAX #cpp #programming 👉 @cpp_lib
775
3
📲 Мы в MAX #cpp #programming 👉 @cpp_lib
📲 Мы в MAX #cpp #programming 👉 @cpp_lib
1 085
4
Компиляторный бенчмаркинг и JIT-компиляция Анастасия Черникова Обсудили инструмент автоматического бенчмаркинга llvm-exegesis
Компиляторный бенчмаркинг и JIT-компиляция Анастасия Черникова Обсудили инструмент автоматического бенчмаркинга llvm-exegesis и то, какие проблемы он помогает решать. Недавно появилась поддержка RISC-V backend: Анастасия рассказала про ее особенности, реализацию и о том, что еще предстоит сделать. Подробно представила режимы работы и опции запуска, чтобы каждый уже в конце доклада смог полноценно использовать llvm-exegesis для решения своих задач. Бонус: вы познакомитесь сllvm-jit и узнаете, как использовать его в качестве самостоятельного инструмента. 00:00 Начало. RISC-V и LLVM 05:24 Компиляторный бенчмаркинг 09:14 Использование и возможности llvm-exegesis 18:03 История инструмента, его разнообразные применения и его путь в RISC-V 25:22 llvm-jit его устройство и использование: как отдельно так и внутри инструментов 29:56 Ответы на вопросы 35:00 Моё камео: ответ про соотношение llvm-mca и llvm-exegesis. Далее Настя продолжает отвечать сама. источник 📲 Мы в MAX #cpp #programming 👉 @cpp_lib
1 256
5
C++ изнутри: внутренние механизмы классов Крис Райан — CppCon 2024 В своём докладе я рассмотрю внутренние механизмы C++ по сл
C++ изнутри: внутренние механизмы классов Крис Райан — CppCon 2024 В своём докладе я рассмотрю внутренние механизмы C++ по следующим темам: - "Луковица C++": как она соотносится с конструированием, уничтожением объектов и полиморфизмом; - Порядок конструирования и уничтожения объектов, а также обработка до и после выполнения main(); - Указатели на функции-члены (это не те C-указатели на функции, что вы знали раньше); - Указатели на данные-члены (не просто «сырые» указатели) и их "data-morphic" функциональность; - Понимание стека вызовов, кадров стека и механизмов базового указателя (base pointer). источник 📲 Мы в MAX #cpp #programming 👉 @cpp_lib
1 261
6
🚀 Подборка полезных IT каналов в Max Системное администрирование, DevOps 📌 https://max.ru/i_odmin Все для системного администратора https://max.ru/bash_srv Bash Советы https://max.ru/sysadminof Книги для админов, полезные материалы https://max.ru/i_odmin_book Библиотека Системного Администратора https://max.ru/i_devops DevOps: Пишем о Docker, Kubernetes и др. https://max.ru/tipsysdmin Типичный Сисадмин https://max.ru/channel_win_sysadmin Системный Администратор Windows https://max.ru/channel_linux_admin Linux: Системный администратор https://max.ru/channel_linuxmod Linux https://max.ru/channel_i_linux Системный администратор https://max.ru/channel_devopslib DevOps, SRE, Sysadmin https://max.ru/channel_devops_star DevOps Star (Звезда Девопса) Excel лайфхак 📌 https://t.me/Excel_lifehack Excel лайфхак Английский с нуля 🇬🇧 https://max.ru/UchuEnglish 1C разработка 📌 https://max.ru/odin1c_rus Cтатьи, курсы, советы, шаблоны кода 1С https://max.ru/channel_DevLab1C 1С:Предприятие 8 Программирование C++📌 https://max.ru/cpp_lib Библиотека C/C++ разработчика https://max.ru/channel_cpp_geek C++ geek Программирование Go📌 https://max.ru/golang_lib Библиотека Go (Golang) разработчика Программирование React📌 https://max.ru/react_lib React Программирование Rust📌 https://max.ru/channel_rust_lib Программирование Python 📌 https://max.ru/python_of Python академия. https://max.ru/BookPython Библиотека Python разработчика Java разработка 📌 https://max.ru/bookjava Библиотека Java разработчика https://max.ru/channel_java_geek Java Geek GitHub Сообщество 📌 https://max.ru/githublib Интересное из GitHub Базы данных (Data Base) 📌 https://max.ru/database_info Все про базы данных Фронтенд разработка 📌 https://max.ru/frontend_1 Подборки для frontend разработчиков Библиотеки 📌 https://max.ru/programmist_of Книги по программированию https://max.ru/proglb Библиотека программиста https://max.ru/bfbook Книги для программистов Программирование 📌 https://max.ru/bookflow Лекции, видеоуроки, доклады с IT конференций https://max.ru/itmozg Программисты, дизайнеры, новости из мира IT https://max.ru/php_lib Библиотека PHP программиста 👨🏼‍💻👩‍💻 Шутки программистов 📌 https://max.ru/itumor Шутки программистов Защита, взлом, безопасность 📌 https://max.ru/thehaking Канал о кибербезопасности https://max.ru/xakkep_1 Хакер Free Книги, статьи для дизайнеров 📌 https://max.ru/odesigners Статьи, книги для дизайнеров Математика 📌 https://max.ru/Pomatematike Канал по математике https://max.ru/phismat_1 Обучающие видео, книги по Физике и Математике Вакансии в IT📌 https://max.ru/progjob https://max.ru/channel_rabotait Мир технологий 📌 https://max.ru/mir_teh Канал для любознательных Городские📌 https://max.ru/piterspb_78 Свежие новости Санкт-Петербурга https://max.ru/mockva_life Свежие новости Москвы https://max.ru/piterspb Питер Новости: Санкт-Петербург / СПБ / ДТП https://max.ru/channel_krasnodar_novosty Краснодар Новости https://max.ru/channel_novosibirsk_novosti Новосибирск https://max.ru/channel_samara_novosti Новости Самары https://max.ru/channel_ekaterinburg_novosti Новости Екатеринбурга https://max.ru/channel_kazan_novosti Новости Казани https://max.ru/channel_omsk_novosti Новости Омска https://max.ru/channel_moskva_24 Москва 24
943
7
C++ Std:: string Interface Overview 📲 Мы в MAX #cpp #programming 👉 @cpp_lib
C++ Std:: string Interface Overview 📲 Мы в MAX #cpp #programming 👉 @cpp_lib
1 044
8
Ошибки, которые не случились: C++ и compile‑time проверка SQL-запросов В этой статье мы посмотрим, как можно реализовать полн
Ошибки, которые не случились: C++ и compile‑time проверка SQL-запросов В этой статье мы посмотрим, как можно реализовать полную compile‑time валидацию SQL‑запросов на основе схемы базы данных, встраиваемой прямо в код. Без магии, без рантайма, без сторонних тулов. Только стандартный C++ и ваша структура БД. Валидация таблиц, столбцов, типов аргументов и их количества — всё на compile‑time. Представьте, если бы компилятор сам указывал «такой таблицы нет», «несуществующий столбец», «несовместимые типы» — до запуска программы. Такой подход полностью устраняет «сюрпризы» во время исполнения и исключает класс ошибок, связанных с генерацией SQL во время работы программы. Ваша программа даже не соберётся. https://habr.com/ru/articles/929052/ 📲 Мы в MAX #cpp #programming 👉 @cpp_lib
1 300
9
Эффективное использование С++ Лекция 1. Библиотеки, утилиты, средства разработки, сборка (Эффективное использование С++) Лекц+5
Эффективное использование С++ Лекция 1. Библиотеки, утилиты, средства разработки, сборка (Эффективное использование С++) Лекция 2. Работа с памятью. Утечки ресурсов. RAII, умные указатели (Эффективное использование С++) Лекция 3. Move semantics, rvalue reference, perfect forwarding. Лекция 4. Callbacks: lambda, bind & function. Лекция 5. Multithreading in C++ (потоки, блокировки, задачи, атомарные операции, очереди сообщений) Лекция 6. Обзор возможностей современных стандартов C++ источник 📲 Мы в MAX #cpp #programming 👉 @cpp_lib
1 805
10
Курс по ООП в С++ введение инкапсуляция наследование полиморфизм шаблоны и метапрограммирование источник 📲 Мы в MAX #cpp #pr+4
Курс по ООП в С++ введение инкапсуляция наследование полиморфизм шаблоны и метапрограммирование источник 📲 Мы в MAX #cpp #programming 👉 @cpp_lib
1 870
11
Запись System Level MeetUp. Поток C++ Мы встретились, чтобы поговорить об C++ в системной разработке: обсудить стандарты, под
Запись System Level MeetUp. Поток C++ Мы встретились, чтобы поговорить об C++ в системной разработке: обсудить стандарты, подходы и реальные задачи, которые решаются на этом языке. 00:00 - Открытие мероприятия. 08:30 - Доклад "Девиртуализация в C++, компиляторах и вашей программе" (Константин Владимиров и Илья Андреев). 47:50 - Вопросы от участников. 01:00:32 - Доклад "Кодек для json'ов с фиксированной схемой" (Никита Пешаков). 01:27:33 - Вопросы от участников. 01:43:04 - Дискуссия "Как писать меньше на C++?" (Константин Владимиров, Илья Казаков, Алексей Щербаков, Василий Рамаданов). 02:43:06 - Доклад "Реализация динамического полиморфизма для свободных функций" (Кирилл Колодяжный). 03:00:56 - Вопросы участников. 03:11:00 - Доклад "Шаблонное мета-программирование в современном C++ для задач космической баллистики" (Леонид Меркин). 03:59:32 - Вопросы участников. 04:06:05 - Доклад "C++ внутри PostgreSQL: удобство против традиций" (Илья Шишков). 04:46:55 - Вопросы участников. источник 📲 Мы в MAX #cpp #programming 👉 @cpp_lib
1 664
12
📲 Мы в MAX #cpp #programming 👉 @cpp_lib
📲 Мы в MAX #cpp #programming 👉 @cpp_lib
1 180
13
Сегментация памяти в программе на C/C++ 📲 Мы в MAX #cpp #programming 👉 @cpp_lib
Сегментация памяти в программе на C/C++ 📲 Мы в MAX #cpp #programming 👉 @cpp_lib
1 327
14
RAII 2.0: RAII как архитектурный инструмент в C++ Идиома RAII — давно зарекомендовал себя как удобный способ автоматического
RAII 2.0: RAII как архитектурный инструмент в C++ Идиома RAII — давно зарекомендовал себя как удобный способ автоматического управления ресурсами в C++. Обычно мы применяем его для управления памятью, файловыми дескрипторами или мьютексами. Однако что, если расширить понятие RAII до управления не только физическими ресурсами, но и логическими контрактами и состояниями системы? В этой статье я хочу поговорить о том, как RAII можно использовать для контроля жизненного цикла асинхронных операций, транзакций или подписок, гарантируя их корректное завершение или откат до прежнего состояния. https://habr.com/ru/articles/901092/ 📲 Мы в MAX #cpp #programming 👉 @cpp_lib
1 464
15
Удобный способ работы с перечислениями в C++ — приведение enum к строке и обратно. Во многих проектах используется enum, чтобы задать ограниченный набор значений. Но как вывести значение enum в лог? Или, наоборот, прочитать из строки и получить нужное значение enum? C++ сам по себе не умеет конвертировать enum в строку и обратно. Вот простая реализация этого функционала через std::unordered_map: enum class LogLevel { Debug, Info, Warning, Error }; const std::unordered_map<LogLevel, std::string> LogLevelToString = { {LogLevel::Debug, "Debug"}, {LogLevel::Info, "Info"}, {LogLevel::Warning, "Warning"}, {LogLevel::Error, "Error"}, }; const std::unordered_map<std::string, LogLevel> StringToLogLevel = { {"Debug", LogLevel::Debug}, {"Info", LogLevel::Info}, {"Warning", LogLevel::Warning}, {"Error", LogLevel::Error}, }; std::string to_string(LogLevel level) { return LogLevelToString.at(level); } LogLevel to_log_level(const std::string& str) { return StringToLogLevel.at(str); } Такой подход хорошо работает, если enum не слишком большой. Если значений много — можно автоматизировать генерацию через макросы или использовать библиотеки вроде magic_enum. 📲 Мы в MAX #cpp #programming 👉 @cpp_lib
1 417
16
Лаконичный макрос defer для C++17 Ручное управление ресурсами в низкоуровневом си-подобном коде на C++ — довольно хлопотное з
Лаконичный макрос defer для C++17 Ручное управление ресурсами в низкоуровневом си-подобном коде на C++ — довольно хлопотное занятие. Создание достойных RAII-врапперов для каждого используемого сишного API не всегда практично, а использование подходов с goto cleanup или множеством вложенных if (success) вредит читаемости кода. Макрос defer как никогда кстати! Отложенная лямбда будет выполнена при выходе из области видимости, независимо от того, будет ли выполнен return, брошено исключение, или даже выполнен goto наружу. Данный макрос по-настоящему zero-cost и не зависит от рантайма C или стандартной библиотеки, поэтому его можно использовать даже в разработке под ядро ОС. https://habr.com/ru/articles/916732/ 📲 Мы в MAX #cpp #programming 👉 @cpp_lib
1 217
17
Низкоуровневый скриптинг на C++ для игровых движков Я постарался охватить только основы, но текст всё равно получился очень длинным. libriscv — это зрелый эмулятор RISC-V, который в настоящее время используется в игровых движках. Насколько мне известно, это единственный эмулятор, в котором основной акцент делается на обработке задержек, а также предоставляются специализированные решения и инструменты для выполнения быстрых вызовов при обращении с функциями — как входящих, так и исходящих. Причём, всё это заключено в безопасной песочнице. Задержки, наблюдаемые в libriscv, гораздо ниже, чем в эталонных эмуляторах. Меня многие спрашивали, как им пользоваться, но здесь интереснее то, как вообще может прийти в голову мысль писать скрипты на C++ — не слишком ли сложно это будет? Оказывается, нет, не очень. Вот уже несколько лет я пишу на C++ скрипты для одной большой и одной не очень большой игры, и меня почти не посещало ощущение, что виной каким-то возникающим при этом проблемам являются язык C++ или связанные с ним скриптовые API. Я много лет программирую на Lua, а до этого пользовался обычным C. Но сейчас современный идиоматический C++ — то, что мне нужно. Причём, я могу писать на этом языке как в самом игровом движке, так и за его пределами, при этом опираясь (буквально) на одни и те же абстракции и оперируя одинаковыми структурами данных. Наконец, C++ просто очень мощный. Правда, я признаю, что о вкусах не спорят, и при работе с C++ также не обойтись без компромиссов. https://habr.com/ru/articles/919620/ 📲 Мы в MAX #cpp #programming 👉 @cpp_lib
1 446
18
Пишем игру для игровой ретро-консоли Anbernic на C++ Дисклеймер Сразу скажу, что почти всё, что описано в этой статье, я дела
Пишем игру для игровой ретро-консоли Anbernic на C++ Дисклеймер Сразу скажу, что почти всё, что описано в этой статье, я делал первый раз в жизни, поэтому я не мог не совершить ошибок. Некоторые мои решения и заявления могут быть некорректными. Воспринимать эту статью как туториал можно только на свой страх и риск. Для нормального восприятия этой статьи вы должны обладать базовыми навыками программирования на C++ и хотя бы общим представлением о том, что из себя представляет операционная система Linux. Как всё начиналось Не так давно ко мне в руки попала игровая консоль Anbernic RG35XX SP. Это портативная игровая консоль на базе четырёхъядерного процессора Allwinner H700 с ядрами Cortex-A53, которая имеет на борту операционную систему OFW (дистрибутив Linux, основанный на Ubuntu). Консоль предназначена для запуска ретро игр на эмуляторе Retroarch. Этот эмулятор поддерживает эмуляцию множества популярных игровых консолей 90х и 2000х и позволяет запускать ТЫСЯЧИ популярных игр, которые можно устанавливать на SD карточку. https://habr.com/ru/articles/897338/ 📲 Мы в MAX #cpp #programming 👉 @cpp_lib
1 390
19
Руководство по сборке Qt под Windows из исходников с MinGW Официальный способ установки готовых бинарников Qt - через онлайн
Руководство по сборке Qt под Windows из исходников с MinGW Официальный способ установки готовых бинарников Qt - через онлайн инсталлятор. Однако он требует обязательной регистрации. Да еще и недоступен на территории РФ. Есть и другие способы получить бинарники, или собрать с компилятором от Microsoft, однако не всегда эти способы приемлемы. Сборка из исходников под Windows может оказаться несколько нетривиальна для новичков, потому сделал небольшую инструкцию по сборке Qt 5 и Qt 6. А так же рассмотрена базовая настройка QT Creator. https://habr.com/ru/articles/917252/ 📲 Мы в MAX #cpp #programming 👉 @cpp_lib
1 387
20
📲 Мы в MAX #cpp #programming 👉 @cpp_lib
📲 Мы в MAX #cpp #programming 👉 @cpp_lib
1 681