我像这样创建了一个二维向量:
int main(){
std::vector<std::vector<int> > my_2d_Vector;
for(int i = 0; i < 10; ++i){
std::vector<int> internal_vector;
for(int j; j < 10; ++j){
internal_vector.push_back(j);
}
my_2d_vector.push_back(internal_vector);
}
print_2d_vector(&my_2d_vector);
}
我正在尝试将其打印到屏幕上,如下所示:
void print_2d_vector(std::vector<std::vector<int> > *my_vector){
for(int i = 0; i < my_vector->size(); ++i){
for(int j = 0; j < my_vector[i].size(); ++j){
std::cout << my_vector[i][j];
}
std::cout << "/n";
}
}
这看起来也不错。但是由于某种我不明白的原因,当我尝试编译它时它告诉我:error : no match for 'operator<<' (operand types are std::ostream {aka std::basic_ostream<char>} and 'std::vector<int>')
我很困惑,因为我从向量而不是向量本身传递一个 int ?