В C++ есть мощный инструмент —
std::string_view. Он позволяет «смотреть» на часть строки без копий и аллокаций. Быстро, удобно, безопасно (если не забыть про время жизни).В примере — функция
get_ext() возвращает расширение файла из пути, не создавая новых строк.Работает с
std::string, литералами, даже const char* — просто и эффективно.Please open Telegram to view this post
VIEW IN TELEGRAM
❤15👍5🔥2🤝1
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥26👍8❤4🤝3
Параллельное суммирование с std::reduce и execution::par!
Если у тебя есть большой массив чисел, и ты хочешь быстро посчитать сумму — не обязательно делать это поэлементно в одном потоке.
С++ даёт инструмент из коробки —
Подключим нужные заголовки:
Теперь создадим данные и посчитаем сумму:
🔥 Без лишних потоков, блокировок и циклов ты получаешь прирост производительности на больших объёмах.
📣 C++ Ready | #практика
Если у тебя есть большой массив чисел, и ты хочешь быстро посчитать сумму — не обязательно делать это поэлементно в одном потоке.
С++ даёт инструмент из коробки —
std::reduce с флагом std::execution::par, который распараллеливает работу по ядрам.Подключим нужные заголовки:
#include <numeric>
#include <execution>
#include <vector>
#include <iostream>
Теперь создадим данные и посчитаем сумму:
std::vector<int> data(1'000'000, 1);
int total = std::reduce(
std::execution::par,
data.begin(), data.end()
);
std::cout << "Сумма: " << total << '\n';
Please open Telegram to view this post
VIEW IN TELEGRAM
❤12🔥8👍5
Бинарный метод делит показатель степени и ускоряет вычисления до log-шагов.
Что важно знать:
• Делим степень пополам;
• Используем остаток от деления;
• Подходит для модулей.
Надёжный шаблон, необходимый в крипте, теории чисел и задачах с модульными вычислениями.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥19🤝9❤4👍3
Они позволяют вставлять данные в контейнеры или читать из потока одной строкой без циклов.
Что важно знать:
• Подстраиваются под контейнер;
• Подходят для потоков;
• Упрощают алгоритмы STL.
Убирают лишний код и делают стандартные алгоритмы удобными даже для нестандартных случаев.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥18❤11👍4🤝2
40 строк кода превращают JSON-расписание в работающий планировщик, который тихо запускает ваши скрипты вовремя.
Что важно знать:
• Один файл исходника;
• Любой POSIX-шёлл;
• Работает офлайн.
Расширяйте проект: добавьте дни недели, параллельный запуск и логирование, чтобы автоматизация стала гибче и надёжней.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥13❤4👍3🤝1