Публикации по теме 'cplusplus'
«Привет, мир» с CMake
«Привет, мир» с CMake
Основная цель — создание проекта с помощью CMake и проверка его работы путем вывода фразы «Hello World».
В разработке программного обеспечения CMake – это кроссплатформенное бесплатное программное обеспечение с открытым исходным кодом для автоматизации сборки, тестирования, упаковки и установки программного обеспечения с использованием независимого от компилятора метода. Я предполагаю, что у вас уже установлен CMake , если нет, вы можете скачать его..
Ежедневные кусочки C++ | станд::реверс
Ежедневный бит(e) C++ #250. Алгоритм реверсирования элементов в двунаправленном диапазоне.
Если мы хотим перебрать элементы двунаправленного диапазона в обратном порядке, нам не нужно его изменять.
Однако, если мы хотим изменить диапазон, мы можем использовать алгоритм std::reverse .
Обратите внимание, что std::list и std::forward_list предоставляют обратный метод, который меняет порядок узлов (вместо того, чтобы менять порядок значений).
#include <forward_list>..
Как использовать cin.get (), cin.peek () и cin.putback () в программировании на c ++.
Прежде всего, мы должны понять, как мы принимали ввод при работе с консольным приложением. Мы используем cin ›› var , чтобы добавить в нашу программу некоторую переменную var. Переменная может иметь тип int, double, char или string. Но вопрос в том, как этот ввод работает?
Итак, когда мы вводим ввод при запуске этой программы и предположим, что вводим ввод как cplusplus , тогда этот ввод сохраняется в потоке входного буфера, как это, и указатель (стрелка) помещается в первый буфер...
Ежедневный бит(е) C++ | станд::вариант
Ежедневный бит (е) C++ # 64, Типобезопасная альтернатива C++ 17 для union, std:: variant
C++17 std::variant — это типобезопасная альтернатива объединению, которая поддерживает нетривиальные пользовательские типы.
Всякий раз, когда вам нужно хранить несвязанные типы или вы хотите избежать наследования, std::variant — отличный выбор.
Элементы могут быть извлечены по типу или индексу; однако доступ возможен только к активному типу.
#include <variant>
#include <string>..
Ежедневный бит(е) C++ | std::find, std::find_if, std::find_if_not
Ежедневный бит (е) C ++ # 134, три алгоритма поиска: std:: find, std:: find_if, std:: find_if_not.
Три алгоритма поиска: std::find , std::find_if и std::find_if_not возвращают итератор к первому элементу в диапазон, удовлетворяющий заданным критериям.
Все три алгоритма имеют варианты std::ranges .
#include <algorithm>
#include <vector>
#include <functional>
std::vector<int> data{1, 2, 3, 4, 5, 6, 7};
// Find by value
auto it =..
Подсчет инверсии в массиве с использованием сортировки слиянием
Подсчет инверсий | Практика | GeeksforGeeks Дан массив целых чисел. Найдите счетчик инверсии в массиве. Счетчик инверсии: для массива счетчик инверсии… practice.geeksforgeeks.org
Привет, кодеры, сегодня мы увидим проблему, основанную на алгоритме сортировки слиянием.
Итак, в задаче нам дан массив A размера n , и мы должны подсчитать количество инверсий в этом массиве.
Определение счетчика инверсии, данное в условии задачи,..
Ежедневный бит(е) C++ | std::views::transform
Ежедневный бит (е) C++ # 139, Представление ленивого преобразования C++ 20: std::views::transform.
C++20 std::views::transform можно использовать для ленивого создания диапазона преобразованных элементов, включая возможность изменения типа элемента диапазона.
#include <vector>
#include <ranges>
std::vector<int> data{1,2,3,4,5};
// produce a view of squared values
constexpr auto square =
std::views::transform([](int v) { return v * v; });
for (int v : data |..