简单的问题,我知道我应该知道。我所要做的就是在给出这些参数时显示一个向量,然后我必须以相反的顺序显示它。你如何制作一个显示24,60和1的矢量?
-2
A
回答
1
先看看cplusplus.com。 以下代码在C++ 98中编译。
#include <cstdlib>
#include <iostream>
#include <vector>
using namespace std;
int main(int argc, char** argv) {
vector<int> myvec;
myvec.push_back(1); myvec.push_back(2); myvec.push_back(3);
for(vector<int>::iterator it = myvec.begin(); it!=myvec.end(); ++it){
cout<<*it<<" ";
}
cout<<"\nRverse Order "<<endl;
for(vector<int>::reverse_iterator it = myvec.rbegin(); it!=myvec.rend(); ++it){
cout<<*it<<" ";
}
return 0;
}
0
有许多方法可以做到这
- 使用循环和指标,并打印到屏幕上。
- 使用迭代器。
但是,当你意识到在这两种情况下你都输出到屏幕上时,使用流重载插入操作符来封装这种行为可能是一个更好的主意(除了其中之一范例):
std::ostream& operator<<(std::ostream& out, const vector<int>& v) {
for (std::vector<int>::const_reverse_iterator it = v.rbegin(); it != v.rend(); ++it) {
out << *it << " ";//you can use a newline here if you wanted every element on a new line
}
return out;
}
用法:
vector<int> vec;
//fill `vec` with data
//...
std::cout << vec << std::endl;
警告
虽然这是一个明智的想法,因为它可以说是更加面向对象的,但是它抽象出提取操作符的含义,因为它违反了least surprise的原则。但是,如果这种行为的目的是一致的,那么取决于您的使用情况,这非常好。
相关问题
- 1. 你如何在另一个矢量上反映矢量?
- 2. Mathematica如何绘制1个变量的矢量场?
- 3. 如何显示零,如果你的变量小于1,用Matlab
- 4. 显示矢量
- 5. 如何通过矢量的矢量反复测试,并显示
- 6. 显示矢量的内容与for循环一个值显示
- 7. 如何从较大的矢量制作较小的矢量...? MATLAB
- 8. 如何制作一个包含对象矢量的类?
- 9. 如何为矢量内的矢量制作指针?
- 10. 如何制作类对象的矢量?
- 11. 矢量绘制不显示垂直线
- 12. 如何制作一个具有指定协方差的随机数矢量到另一个矢量
- 13. 如何重塑一个矢量来制作矩阵?
- 14. 你如何访问unique_ptr的矢量
- 15. 如何从一个矢量的值复制到一个数组?
- 16. 你如何制作一个div“tabbable”?
- 17. C++如何制作2D矢量函数?
- 18. 如何从矢量Python制作矩阵
- 19. Matlab - 如何使这个工作的标量和矢量
- 20. 我如何复制一个矢量块到另一个
- 21. 你将如何迭代矢量?
- 22. 你如何将一个元组的关系表示为1?
- 23. 在QListView中显示矢量
- 24. 根据1个矢量排序2个阵列/矢量
- 25. 把矢量作为子矢量到另一个向量R
- 26. 如何制作一个表格一次显示3个问题
- 27. 如何根据clojure中另一个矢量的值排序一个矢量
- 28. 如何从r中的另一个矢量中减去一个矢量
- 29. Paraview:如何绘制矢量?
- 30. 如何限制矢量的输入量?
你是什么意思_display_矢量?在控制台上? –
我想输出这些数字是的。 – user3311359
那么你正在寻找'std :: cout'。谷歌它,并找出其余的自己 - 有很多例子! –