В курсе подробно разбирается разработка десктопных интерфейсов в Qt Creator: установка и настройка среды, создание окон и виджетов (QPushButton, QRadioButton, QLabel и др.), работа с событиями через сигналы и слотыСсылочка на плейлист: YouTube🖤
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14🔥10❤3
Ограничиваем шаблоны через Concepts и requires в C++20!
Шаблоны в C++ мощные, но часто сложно читать ошибки при неправильных типах. С
Вместо шаблонов «на авось» — пишем осмысленные требования!
Допустим, у нас есть функция, которая должна работать только с числовыми типами:
Теперь, если вызвать
Можно использовать
🔥 Это позволяет задавать чёткие ограничения для шаблонов. Программы становятся безопаснее, читаемее и понятнее!
📣 C++ Ready | #практика
Шаблоны в 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';
}
🔥 Это позволяет задавать чёткие ограничения для шаблонов. Программы становятся безопаснее, читаемее и понятнее!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11🔥9❤7
❤19🔥9👍6
Класс позволяет связать любой callable, выполнить его в удобный момент, получить результат выполнения через возвращённый future, повторно использовать задачу, обменивать её состояние и освобождать связанный callable в виде std::function.Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥25👍7❤6🤝2
Media is too big
VIEW IN TELEGRAM
Платформа охватывает все ключевые аспекты языка, предлагая удобный подход как для новичков, так и для опытных программистов.
Она предлагает пошаговые учебники, практические примеры и онлайн-компилятор для изучения плюсов.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤15👍7🔥4
Консольная утилита, которая с помощью
Boost.Progress визуально отображает обратный отсчёт заданного числа секунд.Важно помнить:
• Прогресс-бар наглядно отражает состояние выполнения заданного таймера.
• Гибкое перенаправление вывода позволяет интегрировать бар куда угодно.
• Принцип работы легко адаптируется к любым другим задачам консоли.
Это позволяет просто и наглядно адаптировать визуализацию прогресса под другие консольные задачи.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥26❤9👍5🤝1
В этой статье:
• Пошаговая настройка среды и сохранение картинки в формате PPM• Отрисовка карты уровня в виде сетки из прямоугольников • Добавление игрока на карту с простыми координатами 🔊 Продолжай читать на Habr!
Please open Telegram to view this post
VIEW IN TELEGRAM
❤16👍5🔥4🤝1
Позволяет работать с фрагментами текста очень быстро: брать и обрабатывать куски строки, пропускать уже обработанные символы, искать разделители и безопасно передавать указатель с длиной в C-функции — всё это без лишних выделений памяти.Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤10🔥9🤝6👍4