如何在c ++中将vector <int>打印到终端

eir*_*aso 0 c++ cout vector

我试图使用"cout"打印整数向量到终端,但我在编译期间收到错误消息:

不匹配'operator <<'(操作数类型是'std :: basic_ostream'和'std :: vector')cout <<"点上的差异:"<< disparityVector << endl;

代码片段如下所示:

vector<int> disparityVector;

for ( int i=0; i<drawPixels.size(); i++)    // Get disparity at each point of the drawn line
  disparityVector.push_back((int)disparityMapOutput.at<int16_t>(pos[i].y, pos[i].x));

cout << "Disparity at points: " << disparityVector << endl;
Run Code Online (Sandbox Code Playgroud)

将值分配给向量时没有错误,只有代码的"cout"部分出错

wl2*_*776 5

例如,使用ostream_iterator.

该页面的示例:

// ostream_iterator example
#include <iostream>     // std::cout
#include <iterator>     // std::ostream_iterator
#include <vector>       // std::vector
#include <algorithm>    // std::copy

int main () {
  std::vector<int> myvector;
  for (int i=1; i<10; ++i) myvector.push_back(i*10);

  std::ostream_iterator<int> out_it (std::cout,", ");
  std::copy ( myvector.begin(), myvector.end(), out_it );
  return 0;
}
Run Code Online (Sandbox Code Playgroud)