我试图使用“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”部分出错
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;
}
如果你想按照你编码的方式来做,你需要下面的东西。
template<class T>
inline std::ostream& operator<< (std::ostream& o, std::vector<T> const& v) {
for (auto const& i : v)
o << i << " ";
return o;
}
例如,使用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终端正确显示文本?