Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我在用
Eigen::Vector2d vector(1,2) std::cout << "x" << vector[0] << std::endl;
但这不起作用,因为 cout 的无效过载
但是这个值应该是两倍还是?
Eigen::Vector2d vector(1,2) double x = vector[0] std::cout << "x" << x << std::endl;
这行得通...有人知道为什么吗?或者我必须做些什么才能获得双倍价值?
感谢帮助
也许结果vector[0]不是double?也许它是某个类或自定义类型?在第一个片段中,您已明确转换vector[0]为double. 如果是这种情况,请尝试在第二个片段中转换结果:
vector[0]
double
Eigen::Vector2d vector(1,2); std::cout << "x" << (double)(vector[0]) << std::endl;