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

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

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

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

نمایش بیشتر
7 322
مشترکین
اطلاعاتی وجود ندارد24 ساعت
+47 روز
+1330 روز
آرشیو پست ها
Объявляю ошибку вида if (x = 42) вымирающей и заношу её в Красную книгу C и C++ багов Если спросить программиста, какие баги
Объявляю ошибку вида if (x = 42) вымирающей и заношу её в Красную книгу C и C++ багов Если спросить программиста, какие баги чаще всего можно встретить в C и C++ коде, он назовёт разыменование нулевого указателя, неопределённое поведение, выход за границу массива и другие, на его взгляд, типовые паттерны ошибок. Скорее всего, он назовёт и случайное присваивание в условии. Но действительно ли эта ошибка распространена в наше время? Так уж сложилось, что в языке C и C++ для оператора присваивания используется символ =, а для сравнения ==. Как следствие, возможны опечатки, когда вместо сравнения пишут = и получают компилируемый, но неправильно работающий код. https://habr.com/ru/companies/pvs-studio/articles/818215/ #cpp #programming 👉 @cpp_lib

Simple Term Colors Библиотека C++17 для работы с цветами в терминале. С поддержкой RGB и HSL! https://github.com/illyigan/sim
Simple Term Colors Библиотека C++17 для работы с цветами в терминале. С поддержкой RGB и HSL! https://github.com/illyigan/simple_term_colors #cpp #programming 👉 @cpp_lib

Высокотехнологичная компания YADRO в поиске тех, кто программирует на C и С++ 🔍 Актуальные вакансии: 1️⃣ Software Engineer C
Высокотехнологичная компания YADRO в поиске тех, кто программирует на C и С++ 🔍 Актуальные вакансии: 1️⃣ Software Engineer C/C++ 2️⃣ Senior C++ developer/Старший инженер-программист С++ 3️⃣ Старший/ведущий инженер-программист встраиваемых интерфейсов 4️⃣ Linux Kernel Developer (Linux/WebUI) /Инженер-разработчик C (risc-V) Ты сможешь реализовывать себя и стать частью команды специалистов, которые создают технологические решения и инновации мирового уровня. Что ещё тебя ждёт: – достойная зарплата (размер обсуждается на собеседовании) и прозрачная система премий; – обучение за счёт компании: учебный портал с курсами и лекциями от экспертов, дополнительное профессиональное обучение, изучение английского, участие в конференциях; – возможность учиться у лучших специалистов индустрии, расти в рамках своей роли, а также участвовать во множестве различных проектов; – личное участие в становлении процессов и продуктов, возможность увидеть результат своей работы; – большое инженерное сообщество, которое постоянно развивается; – гибридный или удалённый формат работы; – ДМС со стоматологией с первого дня, консультации юристов, психологов, экспертов по ЗОЖ и управлению финансами; – скидки для сотрудников, дополнительные day-off; – комфортные офисы в Москве, Санкт-Петербурге, Нижнем Новгороде и Минске. Откликайся по ссылкам и присоединяйся к YADRO!

Структурированная диагностика в новом окне сведений о проблеме Многочисленные ошибки компилятора, в которых, кажется, невозмо
Структурированная диагностика в новом окне сведений о проблеме Многочисленные ошибки компилятора, в которых, кажется, невозможно разобраться, - бич многих разработчиков C++. Инструменты должны предоставлять лучший опыт, чтобы помочь вам понять диагностику и понять, как исправить корень проблемы. https://devblogs.microsoft.com/cppblog/structured-diagnostics-in-the-new-problem-details-window/ #cpp #programming 👉 @cpp_lib

Как добавить non-copyable и non-movable объект в std::map или std::unordered_map struct weird { int value; std::mutex mtx; }; std::map<int, weird> table; table.insert({ 1, {} }); // nope table.insert_or_assign(1, weird{}); // nope table.emplace({ 1, {} }); // nope table.emplace(1, weird{}); // nope table.try_emplace(1, weird{}); // nope https://devblogs.microsoft.com/oldnewthing/20231023-00/?p=108916 #cpp #programming 👉 @cpp_lib

Оплачиваемая стажировка и трудоустройство без опыта — ну ничего себе 😳 Все возможно с Добровольным квалификационным экзамено
Оплачиваемая стажировка и трудоустройство без опыта — ну ничего себе 😳 Все возможно с Добровольным квалификационным экзаменом! Это бесплатный проект Правительства Москвы, где ты можешь показать свои знания по специальности, запомниться потенциальным работодателям и получить оффер в престижные компании Москвы. Тебя ждет всего три шага: 1️⃣ Пройди тест После регистрации на сайте ДКЭ тебе будет доступно 70 профессий по 7 направлениям. Выбирай тест по своей специальности и проверь уровень своих знаний! 2️⃣ Реши кейс Если ты успешно сдал тест, тебя пригласят на следующий этап, где ты с другими участниками в команде будешь решать реальный кейс одного из работодателей. 3️⃣ Стань победителем Окажись в числе лучших по общему количеству баллов за оба этапа и получи шанс попасть на оплачиваемую стажировку с дальнейшим трудоустройством. Готов проявить себя? Регистрируйся и начинай проходить тест — https://dke.moscow Реклама. АНО "РАЗВИТИЕ ЧЕЛОВЕЧЕСКОГО КАПИТАЛА", АНО "РЧК". ИНН 7710364647. erid: LjN8KCnBz

+8
Алгоритмы на С/С++ Задача о Ханойской башне Быстрая сортировка (quick sort) Бинарный поиск в отсортированном массиве Сортировка методом выбора Сортировка методом пузырька Минимизация просмотров в методе сортировки пузырьком Модифицированный метод пузырька Сортировка методом вставок Шейкер - сортировка источник #cpp #programming 👉 @cpp_lib

📚C++: Simple and Effective Tips and Tricks to learn C++ Programming Effectively Автор: Benjamin Smith (2020) Надоело искать
📚C++: Simple and Effective Tips and Tricks to learn C++ Programming Effectively Автор: Benjamin Smith (2020) Надоело искать среди множества учебников простое и удобное для чтения руководство? Программистский жаргон и неполные объяснения концепций замедляют обучение? Если вы ищете справочник, в котором освещаются фундаментальные и ключевые компоненты программирования на C++, эта книга отлично подойдет. #cpp #programming 👉 @cpp_lib

+1
[C++] Регулярные выражения regex_match Часть 1 - Введение в регулярные выражения и regex_match Часть 2 - Практическое применение регулярных выражений и regex_search, regex_replace. источник #cpp #programming 👉 @cpp_lib

Друзья! Курс «Реверсивный инжиниринг ПО под ОС Windows» начинается 3 июня. Скидка 10% по промокоду VESNA10 при оплате до 31 м
Друзья! Курс «Реверсивный инжиниринг ПО под ОС Windows» начинается 3 июня. Скидка 10% по промокоду VESNA10 при оплате до 31 мая. В курсе подробно рассматривается синтаксис Ассемблера, анализ приложений различного уровня сложности, от простейших crackme до полноценных программ на современных архитектурах. Необходимые знания: язык Ассемблера, С/С++, python, навыки работы с IDA и другими инструментами для реверса ВЫ ПОЛУЧИТЕ: - Сертификат/удостоверение о повышении квалификации - Сопровождение и поддержку Академии Кодебай - Возможности трудоустройства/стажировки Пишите нам @Codeby_Academy или звоните +74994441750 Подробнее о курсе → здесь

Введение в регулярные выражения в современном C++ Регулярные выражения (Regular expressions или, вкратце, regex — регулярки)
Введение в регулярные выражения в современном C++ Регулярные выражения (Regular expressions или, вкратце, regex — регулярки) — это пока что непопулярная и недооцененная тема в современном C++. Но в то же время разумное использование регулярных выражений может избавить вас от написания множества строчек кода. Если у вас уже есть какой-никакой опыт работы в индустрии, но вы не умеете использовать регулярные выражения — вы разбазариваете 20-30% своей продуктивности. Я настоятельно рекомендую вам освоить регулярные выражение, так как это единовременная инвестиция в себя (по известному принципу “learn once, write anywhere”). https://dev.to/visheshpatel/introduction-to-regular-expression-with-modern-c-1bn4 #cpp #programming 👉 @cpp_lib

🚀 Начинаете свой путь в разработке на С++? Ждём вас на открытом практическом уроке «Шаблоны в С++ и основы метапрограммирова
🚀 Начинаете свой путь в разработке на С++? Ждём вас на открытом практическом уроке «Шаблоны в С++ и основы метапрограммирования» от OTUS, где мы разберем: - мощный инструмент создания и настройки типов во время компиляции с помощью шаблонов в C++; - как шаблоны обогащают функциональность языка и улучшают процесс разработки; - ответы на все возникающие вопросы. Спикер Евгений Пальчуковский — разработчик с большим международным опытом в финтехе. ⏰ Встречаемся 28 мая в 20:00 мск в преддверии старта курса «Специализация C++ Developer». Все участники вебинара получат специальную цену на обучение и консультацию от менеджеров OTUS! ➡ Регистрируйтесь прямо сейчас, чтобы не пропустить бесплатный урок: РЕГИСТРАЦИЯ

Ода хейта C++ Язык С++ по-настоящему стар. Казалось бы это должно идти ему на пользу, как хорошему вину. Но этому мешает обра
Ода хейта C++ Язык С++ по-настоящему стар. Казалось бы это должно идти ему на пользу, как хорошему вину. Но этому мешает обратная совместимость. Хорошая идея, если бы она работала... Давайте просто честно признаемся: ни один из стандартов не был обратно совместим. ВСЕГДА реальные проекты требовали миграции и адаптации не то что под новую версию стандарта, но даже под новую версию компилятора. Чем больше проект, тем больше усилий, и порой фатальных. Уверен, среди читающих найдется человек, у которого на работе все еще 98й стандарт С++. В целом, идея не ломать старое - хорошая. Лучше уж поломать совсем немного, чем вообще все. Не спорю, здесь С++ держится хорошо, местами даже слишком. Но из-за боязни сломать старое в языке засели старые и просто неправильные решения. Язык настолько сильно прошит старыми древними идеями, что порой удивляешься как это до сих пор существует в современном мире, где есть куча других более изящных решений в других языках. И ведь логично было бы поправить самые крупные косяки, но нет, все заплаточки аккуратно пришиваются сверху чтобы "не дай боже старая всем нужная библиотека не сломалась". Ну раз она старая и всем нужная, разве никто не проапгрейдит ее? Все же хотелось бы чтобы язык признавал свои ошибки и ломал даже самые старые концепции в угоду более лучшего будущего. https://habr.com/ru/articles/811369/ #cpp #programming 👉 @cpp_lib

dlib C++ library Dlib - это современный инструментарий C++, содержащий алгоритмы машинного обучения и инструменты для создания сложного программного обеспечения на C++ для решения реальных задач. https://github.com/davisking/dlib #cpp #programming 👉 @cpp_lib

Подкаст про системное программирование для разработчиков на С/С++ Использовать компиляторы, операционные системы и отладчики
Подкаст про системное программирование для разработчиков на С/С++ Использовать компиляторы, операционные системы и отладчики — здорово, еще круче — понимать, как они устроены. О сложных материях системного программирования доступно рассказывают ведущие подкаста «Битовые маски». Вместе с гостями — практикующими инженерами и разработчиками — они обсуждают актуальные задачи в отрасли и случаи из практики. Для разработчиков на C/C++ есть отдельный плейлист. Вот несколько тем из него: • LLVM и GCC / Register allocation / IT-образование в вузах • LLVM в компиляторах для GPU / Стандарты C++ • Разработка компиляторов / LLVM backend для RISC-V / Компилятор для Kotlin • Сетевые протоколы / Гетерогенные системы / Операционные системы / RTOS Смотреть подкаст → Чтобы не пропустить новые выпуски подкаста, подписывайтесь на Telegram-канал «Битовые маски».

Алгоритмы диапазонов C++20 — 7 немодифицирующих операций https://www.cppstories.com/2022/ranges-alg-part-one/ #cpp #programmi
Алгоритмы диапазонов C++20 — 7 немодифицирующих операций https://www.cppstories.com/2022/ranges-alg-part-one/ #cpp #programming 👉 @cpp_lib

C++, ping и traceroute Изучая сетевое программирование и имея в портфолио несколько проектиков на C++, связанных с сетевым программированием, я решил написать что-нибудь, что будет иметь реальное практическое применение. Первое, что мне пришло в голову - утилита ping. https://habr.com/ru/articles/726714/ #cpp #programming 👉 @cpp_lib

🟢 Начинаете свой путь в разработке на С++? Ждём вас на открытом практическом уроке «Шаблоны в С++ и основы метапрограммирова
🟢 Начинаете свой путь в разработке на С++? Ждём вас на открытом практическом уроке «Шаблоны в С++ и основы метапрограммирования» от OTUS, где мы разберем: - мощный инструмент создания и настройки типов во время компиляции с помощью шаблонов в C++; - как шаблоны обогащают функциональность языка и улучшают процесс разработки; - ответы на все возникающие вопросы. Спикер Евгений Пальчуковский — разработчик с большим международным опытом в финтехе. ⏰Встречаемся 28 мая в 20:00 мск в преддверии старта курса «Специализация C++ Developer». Все участники вебинара получат специальную цену на обучение и консультацию от менеджеров OTUS! ➡ Регистрируйтесь прямо сейчас, чтобы не пропустить бесплатный урок: РЕГИСТРАЦИЯ Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru

Астрофото: совмещаем одиночные кадры Одной из главных проблем при съёмке астрофотографий являются разнообразные шумы. Не буду
Астрофото: совмещаем одиночные кадры Одной из главных проблем при съёмке астрофотографий являются разнообразные шумы. Не буду подробно останавливаться на том, откуда они берутся и какие компоненты в них присутствуют. Об этом уже есть хорошая серия статей на Хабре. Здесь я только резюмирую основной способ борьбы с шумом: нужно снять несколько кадров одной и той же области неба (чем больше, тем лучше) и усреднить сигнал с соответствующих пикселей. Но какие пиксели на разных кадрах считать соответствующими? Если бы можно было гарантировать, что объекты между кадрами не сдвинутся ни на пиксель, то всё было бы предельно ясно: просто суммируем одни и те же пиксели на матрице. Но что делать, когда слежение неидеально, или съёмка вовсе ведётся с неподвижного штатива? Тогда звёзды и другие небесные тела будут смещаться, и перед сложением кадры нужно будет правильно наложить друг на друга. Эта статья посвящена тому, как это сделать. https://habr.com/ru/articles/698992/ #cpp #programming 👉 @cpp_lib

Многообразие связных списков Связный список — классическая структура данных, которая позволяет быстрые вставки/удаления, но п
Многообразие связных списков Связный список — классическая структура данных, которая позволяет быстрые вставки/удаления, но при этом просаживает другие операции (случайный доступ к элементу). Мы пройдёмся от базовой реализации до других возможных вариаций этой структуры данных и, надеюсь, вместе узнаем что-то новое. Краем глаза увидим возможные применения связных списков. И в конце, для любителей C++, бонус: использование связного списка для сбора диагностики использования динамической памяти в вашем коде. https://habr.com/ru/articles/814955/ #cpp #programming 👉 @cpp_lib