用两个向量,一个变量是x, y, z,另一个值是1,2,3,来得到x=1, y=2, z=3的方程

Using two vectors, one with variables like x, y, z, one with values like 1, 2, 3, to make an equation like x=1, y=2, z=3?

本文关键字:变量 方程 两个 向量 另一个 一个      更新时间:2023-10-16

我正在使用一个基于c++的程序,但有自己的语法。例如,我将如何将变量x设置为2:

x() = 2;

我从外部文件中读取变量和它们的初始值。数据存储在两个向量中。向量1保存我的标签,"x(), y()和z()"。Vector2保存值,比如"1,2,3"。

我的问题是我需要把数据放在一起,以便程序执行将特定值绑定到特定变量的表达式。例如,x() = 2,等等。

我该怎么做?如果我说:Vector1[0] = 2,那么我只是用2覆盖了Vector1的元素。我不明白:x() = 2.

我认为用std::map来解决这个问题比较好。

例如:

std::map<std::string, int> m;
//x() = 2
m["x"] = 2;
//y() = 3
m["y"] = 3;
std::cout << m["x"] << std::endl;