帮我写一段c++代码,给std::vectorEigen::Vector3d,自定义键盘输入数值
时间: 2023-08-25 11:25:06 浏览: 80
C++中vector可以作为map的键值实例代码
当然可以,以下是一个示例代码,它将从键盘输入三个3D向量,并将它们添加到一个`std::vector`中:
```
#include <iostream>
#include <vector>
#include <Eigen/Dense>
int main()
{
std::vector<Eigen::Vector3d> vec;
std::cout << "Please enter three 3D vectors:\n";
for (int i = 0; i < 3; i++)
{
Eigen::Vector3d v;
std::cout << "Vector " << i+1 << ": ";
std::cin >> v(0) >> v(1) >> v(2);
vec.push_back(v);
}
std::cout << "The vector contains " << vec.size() << " elements:\n";
for (std::vector<Eigen::Vector3d>::iterator it = vec.begin(); it != vec.end(); ++it)
std::cout << *it << '\n';
return 0;
}
```
在这个例子中,我们使用了Eigen库中的`Vector3d`类型来表示3D向量,并从键盘输入了三个3D向量。我们使用了`push_back`函数来添加向量,使用`size`函数来获取向量的数量,并使用一个循环来打印向量。
注意:在输入向量的过程中,我们使用了括号运算符`( )`来访问向量中的元素,例如`v(0)`表示向量中的第一个元素。
阅读全文