我想用一個迭代器打印一個向量:打印使用迭代器C++
#include <vector>
#include <istream>
#include <iostream>
#include <sstream>
#include <stdlib.h>
#include <math.h>
using namespace std;
typedef vector<int> board;
typedef vector<int> moves;
int sizeb;
board start;
moves nmoves;
istringstream stin;
board readIn(std :: istream& in) {
int val;
while (in >> val)
start.push_back(val);
sizeb = start[0];
return start;
}
void printboard(board n) {
int sizem = sizeb*sizeb;
int i = 1;
for (vector<int>::iterator it = start.begin() ; it != start.end(); ++it) {
for (int j = 0; j < sizeb; ++j)
cout << "\t" << it;
cout << endl;
}
}
我收到此錯誤:
error: invalid operands to binary expression
('basic_ostream<char, std::__1::char_traits<char> >' and
'vector<int>::iterator' (aka '__wrap_iter<pointer>'))
cout << "\t" << it;
你能幫助我嗎?
我想我正在轉換一個字符串,我收到一個int類型。也許我沒有用正確的方式迭代器(我認爲這是問題,但我不知道)
在此先感謝。
您的代碼和錯誤消息看起來不匹配。檢查錯字。 – MikeCAT
歡迎來到Stack Overflow!請** [編輯] **用[mcve]或[SSCCE(Short,Self Contained,Correct Example)]提問你的問題](http://sscce.org) – NathanOliver
我想打印一個int向量,我正在使用一個int迭代器。 –