Позволяет быстро добавлять задачи, отмечать их выполненными и хранить в локальном JSON‑файле.
В этой задаче:
• Загружает и сохраняет список задач через обычный текстовый файл.
• Позволяет переключать статус задачи одной командой в терминале.
• Структура и код легко расширяются под любые нужды.
Минималистичный помощник для повседневных дел.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤10🔥6👍5
Обходим все .cpp файлы в проекте!
Нужно найти все
Сначала подключим нужные заголовки:
Теперь проходимся по всем подкаталогам и фильтруем
🔥 Чтение файловой структуры стало кроссплатформенным и безопасным — никакой магии, только
📣 C++ Ready | #практика
Нужно найти все
.cpp файлы в дереве каталогов — например, для подсчёта строк, парсинга или запуска сборки. Вместо вызова find из shell — используем стандартную библиотеку C++.Сначала подключим нужные заголовки:
#include <filesystem>
#include <iostream>
Теперь проходимся по всем подкаталогам и фильтруем
.cpp:namespace fs = std::filesystem;
for (const auto& entry : fs::recursive_directory_iterator("src"))
if (entry.path().extension() == ".cpp")
std::cout << entry.path() << '\n';
🔥 Чтение файловой структуры стало кроссплатформенным и безопасным — никакой магии, только
std-решения.Please open Telegram to view this post
VIEW IN TELEGRAM
🔥12❤3👍2
Теперь можно узнать имя функции, файл и строку вызова — без
FILE и LINE.Что важно знать:
• Контекст подставляется автоматически — просто передай параметр по умолчанию;
• Подходит для логгера, assert-проверок и трассировки;
• Упрощает отладку и делает код самодокументируемым.
Добавь в свой тулкит — сразу станет чище.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥13👍7❤3
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥10❤4👍3
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥25👍6❤4
Удобная распаковка нескольких значений: std::tie и std::ignore в действии!
Иногда функция возвращает несколько значений — например, пара из
С
Если нужно проигнорировать часть результата — используем
🔥 Удобно, когда нужно быстро разобрать структуру на отдельные значения, не засоряя код
📣 C++ Ready | #практика
Иногда функция возвращает несколько значений — например, пара из
std::pair. Раньше приходилось вручную обращаться к .first и .second, что быстро превращалось в нечитаемый код.С
std::tie можно сразу распаковать результат в переменные:std::pair<int, std::string> get_data() {
return {42, "ответ"};
}
int main() {
int num; std::string text;
std::tie(num, text) = get_data();
std::cout << num << " — " << text;
}Если нужно проигнорировать часть результата — используем
std::ignore:auto [code, message] = std::make_pair(200, "OK");
std::cout << code; // 200
int val;
std::tie(val, std::ignore) = std::make_pair(7, 99);
std::cout << val; // 7
🔥 Удобно, когда нужно быстро разобрать структуру на отдельные значения, не засоряя код
.first / .second.Please open Telegram to view this post
VIEW IN TELEGRAM
👍14🔥7❤4
Сможет превращать любую картинку в символьную «картину» прямо в терминале или сохраняет в
.txtВ этой задаче:
• Считываем и масштабируем изображение в оттенки серого с помощью OpenCV;
• Преобразуем яркость каждого пикселя в соответствующий символ из палитры;
• Выводим построчно готовый ASCII-арт без дополнительных зависимостей.
Это минималистичный инструмент для создания текстового искусства.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥47❤8👍8🤝3