Задать вопрос
@Toster_someone

Как нециклически вывести массив в консоль?

Привет, пытаюсь найти std функцию, с помощью которой можно вывести нециклически к примеру вектор чисел

//Примерный код в main

std::vector<int> vec = {1, 3, 2, 6, 1};

std::магия(std::begin(vec), std::ostream_iterator<int>(std::cout));

Вообще, хотелось бы узнать как можно нециклически вывести файлы в папке через filesystem, в интернете и на форумах не получилось найти :(
  • Вопрос задан
  • 110 просмотров
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 4
Непонятно, зачем отказываться от циклов, т.к. в неявном виде они все равно будут использоваться.
Ну можно так вывести
std::vector<int> v(15);
std::for_each(v.begin(), v.end(), [](int i) { std::cout << i << std::endl;});
Ответ написан
Комментировать
C++20
auto view = vec
  | std::ranges::views::transform(
      [](auto x) { return fmt::format("{}\n", x); })
  | std::ranges::views::join;
std::ranges::copy(view, std::ostream_iterator<int>(std::cout));

Замечу, что работать это будет сильно медленнее, чем если просто вывести каждое число в цикле.
Ответ написан
Комментировать
myjcom
@myjcom Куратор тега C++
Вообще, хотелось бы узнать как можно нециклически вывести файлы в папке через filesystem, в интернете и на форумах не получилось найти :(

https://en.cppreference.com/w/cpp/filesystem/recur...
Ответ написан
Комментировать
0hquazEd
@0hquazEd
Способов много, но почти всегда неявно будут использоваться циклы.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы