【问题标题】:How to print out the contents of a std::vector with std::copy_n?如何使用 std::copy_n 打印出 std::vector 的内容?
【发布时间】:2019-01-05 08:41:13
【问题描述】:

我想用 C++ 打印出std::vector 的内容。

这是我所拥有的:

#include <iostream>
#include <iterator>
#include <vector>
#include <algorithm>

using namespace std;

int main()
{
  vector<int> v;
  copy_n(istream_iterator<int>(cin), 5, back_inserter(v));

  return 0;
}

我可以用同样的方法打印std::vector的内容吗?

【问题讨论】:

标签: c++ algorithm c++11 stdvector c++-standard-library


【解决方案1】:

是的。您需要在std::ostream_iterator 的帮助下遍历向量和std::copy 的内容到输出流。

std::copy(v.begin(), v.end(), std::ostream_iterator<int>(std::cout, " "));

See live

【讨论】:

    【解决方案2】:

    是的,您可以通过将迭代器和vectorstd::ostream_iterator 的大小传递给std::copy_n 来实现。

    std::copy_n(v.begin(), v.size(), std::ostream_iterator<int>(std::cout, " "));
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-06-09
      • 2020-08-03
      • 1970-01-01
      • 1970-01-01
      • 2021-08-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多