我想要了解C ++,我想要打印一个向量的内容,或者,为了确认我的程序是正确的,我可以添加向量的内容并打印结果。
这是我的代码:
#include <iostream>
#include <vector>
using std::vector;
using std::cin;
using std::cout;
int main(){
int n;
vector<int> result;
cin >> n;
vector<int> numbers(n);
for(int i = 0; i < n; ++i){
cin >> numbers[i];
}
result = numbers;
cout << result;
return 0;
}
我在网上找到了一些用于打印矢量的解决方案,但我并不了解代码的作用,所以我希望有人可以提供帮助。
答案 0 :(得分:2)
正如您所说“我不明白代码在做什么”,让我简要介绍一下如何遍历容器:
漫长的道路:
vector<int> result = { 1,2,3 };
for (vector<int>::iterator it = result.begin(); it != result.end() ; it++) {
int i = *it;
cout << i << " ";
}
每个容器都提供一个迭代器,您可以想到沿着容器元素向前移动的指针。 begin()
返回指向第一个元素的指针,end()
返回指向最后一个元素的1的指针。取消引用迭代器可以得到实际值。
从长远来看,使用Array#find()
,C ++提供了一个具有相同含义的简写符号(即它使用了迭代器概念,但在符号中不那么“笨拙”):
for (auto i : result) {
cout << i << " ";
}
尝试一下;希望它有所帮助。
答案 1 :(得分:0)
您可以通过循环打印矢量大小
中的每个索引来打印矢量内容像
for(int i=0;i<numbers.size();i++){
cout<<numbers[i];
}
循环将打印每个索引,直到向量结束