当前位置: 首页 > 知识库问答 >
问题:

如何在c中打印矢量到终端[复制]

叶英哲
2023-03-14

我试图使用“cout”将一个整数向量打印到终端,但是在编译过程中我得到一条错误消息:

没有“运算符”的匹配项

代码片段如下所示:

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;

给向量赋值没有错误,只有代码的“cout”部分出错

共有3个答案

东门彬
2023-03-14
std::ostream& operator<<(std::ostream& os, const vector<int>& v)
{
    std::ostream_iterator<int> _oit(cout, " ");
    std::copy(v.begin(), v.end(), _oit);
    return os;
}
孟英叡
2023-03-14

如果你想按照你编码的方式来做,你需要下面的东西。

template<class T>
inline std::ostream& operator<< (std::ostream& o, std::vector<T> const& v) {
  for (auto const& i : v)
    o << i << " ";
  return o;
}
司徒宇
2023-03-14

例如,使用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;
}
 类似资料:
  • 错误信息: D:\main.cpp:91:错误:与“operator<<”不匹配(操作数类型为“std::ostream{aka std::basic_ostream}”和“__gnu_cxx::__alloc_traits>::value_type{aka Obj}”)cout<

  • 我正在使用push_back()函数插入这些元素,我想知道 我如何打印向量c的内容? 我尝试过

  • 如何将的内容打印到屏幕? 实现以下< code >运算符的解决方案 以下是我目前所拥有的,没有单独的功能:

  • 问题内容: 是否有与perl相当的python蟒蛇 可用python吗? 我知道解决方案; 我想要的是我应该能够为所有打印消息设置颜色,例如, 这里的“ function_print_something”是我的python函数,它将一些格式化的日志消息打印到屏幕上。 问题答案: 请问Python的termcolor模块呢?对于某些用途,这将是大致等效的。 一个特殊的要求是设置颜色,并可能设置其他终

  • 我正在尝试感受 C ,我想打印向量的内容,或者,为了确认我的程序是正确的,我可以添加向量的内容并打印结果。 这是我的代码: 我在网上找到了一些打印矢量的解决方案,但是我不明白这些代码在做什么,所以我希望有人能帮忙。

  • 这是我的代码: 在VS代码终端中打印: 如何修复它,以便VS Code终端正确显示文本?