C/C++ Ready | Программирование (@cpp_ready) — Telegram-канал | Telegram Dialogs
Все каналы
C/C++ Ready | Программирование

C/C++ Ready | Программирование

@cpp_ready

14.3K подписчиков технологии 💬 Комментарии открыты

Авторский канал по разработке на C и C++. Ресурсы, гайды, задачи, шпаргалки. Информация ежедневно пополняется! Автор: @energy_c РКН: https://clck.ru/3QREHc Реклама на бирже: https://telega.in/c/cpp_ready

Последние публикации

C/C++ Ready | Программирование
17.07.2026 11:12 · 👁 699
Интересный практический проект, собственная игра на C++ для портативной ретроконсоли! В этой статье: • Как организовать структуру небольшого игрового проекта • Как устроить главный игровой цикл и переключение состояний • Как разделить стартовый экран, игровой процесс и завершение игры • Как собрать клон Google Dino и запустить его на реальном устройстве Хороший способ посмотреть, как обычные классы, состояния и игровой цикл превращаются в законченную работающую игру. Продолжай читать на Habr! 📣 C++ Ready | #статья
C/C++ Ready | Программирование
17.07.2026 09:12 · 👁 825
Пачку офферов заказывали? О всех трудоустройствах через ИИ-ассистента Софи ребята узнают от пользователей. И какой же кайф, когда они делятся своими историями. Вот так в чате узнали сразу о трех новых офферах: • Кейс Сергея - 2 недели в Софи и 2 оффера. • Кейс Елены - 1 неделя в Софи и оффер спустя 10 лет перерыва в работе. Елене 52 года. • Кейс Юлии - 1 месяц в Софи, свитчер из финансового аналитика в разработчика SQL. И еще один оффер🎉 Искренние поздравления ребятам и удачи им на новой работе! В следующий раз доступ в Софи откроется уже 21 июля. Если хочешь получить 3 дня бесплатного доступа - подписывайся на этот канал, все анонсы будут там.
C/C++ Ready | Программирование
16.07.2026 08:12 · 👁 1.1K
Интересная статья о том, как написать виртуальную машину на C++! В этой статье: • Как устроить цикл получения и выполнения опкодов • Как представить память, регистры и состояние процессора • Как добавлять собственные инструкции через набор обработчиков Продолжай читать на Habr! 📣 C++ Ready | #статья
C/C++ Ready | Программирование
15.07.2026 11:12 · 👁 1.2K
std::string_view не владеет строкой и в этом легко ошибиться! std::string_view хранит только указатель на символы и их количество. Он не копирует текст и не продлевает время жизни исходной строки. Поэтому такой код опасен: std::string_view name = make_name(); Если make_name() возвращает std::string, временная строка уничтожается в конце выражения. После этого name продолжает указывать на уже недействительную память. Безопасный вариант сначала сохранить строку: std::string name = make_name(); std::string_view view = name; Теперь view можно использовать, пока существует name и операции со строкой не сделали указатель недействительным. string_view хорошо подходит для параметров функций, которые только читают текст: void print_name(std::string_view name) { std::cout << name << '\n'; } Такой метод принимает строковые литералы, std::string и другие непрерывные последовательности символов без лишнего копирования: std::string user = "Alex"; print_name(user); print_name("Admin"); А вот возвращать представление локальной строки нельзя: std::string_view get_status() { std::string status = "ready"; return status; } После выхода из функции status уничтожается, а возвращённый string_view становится висячим. 📣 C++ Ready | #совет
C/C++ Ready | Программирование
15.07.2026 09:12 · 👁 1.1K
IT мероприятия 🤘 Всё самое интересное для карьеры в IT: митапы, хакатоны, конференции, стажировки и обучение. Подписывайся 🤘 1. Москва 2. Санкт-Петербург 3. Для стажеров и студентов
C/C++ Ready | Программирование
15.07.2026 07:12 · 👁 1.2K
Современный C++23 на компьютере с Windows 95! В этой статье: • Как получить совместимый 32-битный код современным компилятором • Зачем объектные файлы передаются старому линкеру Visual C++ • Как заменить недоступные части стандартной библиотеки и работать через WinAPI Продолжай читать на Habr! 📣 C++ Ready | #статья
C/C++ Ready | Программирование
14.07.2026 11:12 · 👁 1.3K
Почему чтение через map[key] может изменить контейнер? Обращение через квадратные скобки выглядит как обычное получение значения: std::cout << hits["api"]; Но если ключа "api" ещё нет, operator[] автоматически создаст его и добавит значение по умолчанию. Для int таким значением будет 0: std::map<std::string, int> hits; std::cout << hits["api"]; // 0 std::cout << hits.size(); // 1 Получается, что код только читал значение, но размер контейнера изменился. Если нужно найти ключ без вставки, используйте find(): auto it = hits.find("api"); if (it != hits.end()) { std::cout << it->second; } Начиная с C++20 наличие ключа можно проверить через contains(): if (hits.contains("api")) { std::cout << hits.at("api"); } at() не создаёт новый элемент. Если ключ отсутствует, метод выбросит std::out_of_range. При подсчёте событий поведение operator[], наоборот, очень удобно: ++hits["api"]; ++hits["api"]; std::cout << hits["api"]; // 2 Используйте map[key], когда автоматическая вставка допустима. Для чтения без изменения контейнера выбирайте find(), contains() или at(). 📣 C++ Ready | #совет
C/C++ Ready | Программирование
14.07.2026 07:12 · 👁 1.3K
Шпаргалка по форматированию вывода в C++! Например, {:.2f} оставляет два знака после запятой, {:08} дополняет число нулями, а {:x} выводит его в шестнадцатеричном формате. На картинке синтаксис библиотеки {fmt}: позиционные и именованные аргументы, выравнивание, ширина, точность, системы счисления, строки, указатели, диапазоны и кортежи. Сохрани, чтобы не потерять! 📣 C++ Ready | #ресурс
C/C++ Ready | Программирование
13.07.2026 17:12 · 👁 1.4K
Измеряем время выполнения блока кода на C++! Создадим небольшой RAII-таймер. Он начнёт измерение при создании и автоматически покажет результат при выходе из области видимости. Сохраним название операции и время запуска: class ScopeTimer { std::string name_; std::chrono::steady_clock::time_point start_; Добавим конструктор: public: explicit ScopeTimer(std::string name) : name_(std::move(name)), start_(std::chrono::steady_clock::now()) {} В деструкторе вычислим прошедшее время: ScopeTimer() { const auto elapsed = std::chrono::steady_clock::now() - start_; const auto microseconds = std::chrono::duration_cast< std::chrono::microseconds >(elapsed); Остаётся вывести результат и закрыть класс: std::cout << name_ << ": " << microseconds.count() << " us\n"; } }; Теперь измерим сортировку: { ScopeTimer timer("sorting"); std::ranges::sort(values); } После выхода из блока деструктор вызовется автоматически: sorting: 1842 us steady_clock подходит для измерения интервалов, потому что не зависит от перевода системных часов. 📣 C++ Ready | #практика
C/C++ Ready | Программирование
13.07.2026 15:12 · 👁 1.3K
😒 Официальная библиотека промптов для Claude от Anthropic Разработчики из Anthropic обновили и структурировали масштабный хаб готовых запросов для своей языковой модели. База создана для того, чтобы пользователи могли выжать максимум из Claude при решении прикладных и технических задач, не тратя время на самостоятельный подбор формулировок. ⚡️Внутри собраны сотни шаблонов под самые разные сценарии: 🟦Для безопасности: готовые конструкции для проверки кода на уязвимости и анализа граничных условий работы алгоритмов. 🟦Для разработчиков: шаблоны для глубокого ревью кода, автоматического поиска багов, рефакторинга, написания юнит-тестов и проектирования архитектуры. 🟦Для автоматизации и менеджмента: промпты под стратегическое планирование, парсинг неструктурированных данных, генерацию технической документации и выстраивание логики для ИИ-агентов. Каждый шаблон снабжен подробным разбором: авторы пошагово объясняют, почему выбрана именно такая структура запроса, как модель интерпретирует переменные и как правильно передавать контекст. Поскольку библиотека официальная, все промпты оптимизированы под особенности контекстного окна и логику мышления последних моделей семейства Claude. ❤️‍🩹Сохраняйте в закладки и внедряйте в свои рабочие процессы. Нейросети отлично автоматизируют рутину и помогают искать уязвимости, но управлять ими может только тот, кто понимает саму базу и суть киберугроз. Если вы хотите заложить мощный фундамент начните с нашего бесплатного курса (его прошли уже 1108 человек!). 🟦Разберетесь, как работают кибератаки и как грамотно защитить свои данные. 🟦Познакомитесь с направлениями и профессиями в кибербезопасности, чтобы выбрать свой трек. 🟦Получите скидку, если решите продолжить обучение в CyberYozh Academy. 👉 Начните бесплатно прямо сейчас 🦔 CyberYozh
Чат поддержки
Ответим здесь же, обычно быстро
Здравствуйте! Напишите ваш вопрос — оператор ответит в этом чате.