C/C++ Ready | Программирование
12.2K subscribers
701 photos
42 videos
336 links
Авторский канал по разработке на C и C++.
Ресурсы, гайды, задачи, шпаргалки.
Информация ежедневно пополняется!

Автор: @energy_it

Реклама на бирже: https://telega.in/c/cpp_ready
加入频道
👩‍💻 Разберем std::condition_variable — механизм синхронизации потоков!

Он позволяет одному потоку приостановиться и ждать сигнала от другого, обеспечивая безопасное взаимодействие и предотвращая гонки данных. Часто используется вместе с мьютексами, когда нужно согласовать работу нескольких потоков.

📣 C++ Ready | #шпора
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥265👍3🤝3
👐 Отличная статья — практический гайд по созданию синтаксических анализаторов вручную!

В этой статье:
• Пошаговое руководство по написанию парсера на C++ вручную
• Демонстрация библиотеки forward_stream с итераторами и буферизацией
• Примеры calc.cpp и winreg.cpp показывают практическое использование подхода

🔊 Продолжай читать на Habr!


📣 C++ Ready | #статья
Please open Telegram to view this post
VIEW IN TELEGRAM
👍85🔥4
👩‍💻 Вычисления на этапе компиляции — мощный инструмент метапрограммирования!

Шаблоны — это не только обобщение типов, но и возможность выполнять вычисления до запуска программы.

Что важно знать:

Можно считать значения заранее, без запуска программы.

Ошибки находятся до запуска, ещё при сборке.

Код работает быстрее за счёт подготовки заранее.


Такой стиль программирования ускоряет выполнение и делает код более надёжным за счёт ранних проверок.

📣 C++ Ready | #гайд
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥16👍134🤝3
😁51🔥14👍72
👩‍💻 Проверка целостности файла!

Небольшая утилита, которая считает SHA-256 контрольную сумму файла и по желанию сверяет её с эталонным значением.

Важно помнить:

Утилита вычисляет уникальную подпись для любого файла

Файл обрабатывается по частям, не загружая всю память

Можно автоматически проверить соответствие файла эталонному значению


Это позволяет эффективно обрабатывать файлы любого размера и автоматически проверять их целостность

📣 C++ Ready | #задача
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥86
👩‍💻 Пошаговое изучение создания GUI-приложений с помощью Qt

В курсе подробно разбирается разработка десктопных интерфейсов в Qt Creator: установка и настройка среды, создание окон и виджетов (QPushButton, QRadioButton, QLabel и др.), работа с событиями через сигналы и слоты

Ссылочка на плейлист: YouTube 🖤


📣 C++ Ready | #курс
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13🔥103
Ограничиваем шаблоны через Concepts и requires в C++20!

Шаблоны в C++ мощные, но часто сложно читать ошибки при неправильных типах. С Concepts стало проще: теперь можно явно ограничивать допустимые типы.

Вместо шаблонов «на авось» — пишем осмысленные требования!

Допустим, у нас есть функция, которая должна работать только с числовыми типами:
#include <concepts>  // std::integral, std::floating_point
#include <iostream>

// Обобщённая функция только для целых чисел
template <std::integral T>
void print_twice(T value) {
std::cout << value << " " << value << '\n';
}


Теперь, если вызвать print_twice("hello") — компиляция просто не пройдёт. А с print_twice(42) — всё отлично.

Можно использовать requires для более сложной логики:
template <typename T>
requires std::floating_point<T>
void print_square(T value) {
std::cout << "Квадрат: " << value * value << '\n';
}


🔥 Это позволяет задавать чёткие ограничения для шаблонов. Программы становятся безопаснее, читаемее и понятнее!

📣 C++ Ready | #практика
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11🔥96