是否可以在MATLAB中将字符串转换为可变代码名称?

时间:2016-03-21 17:02:22

标签: matlab

这可能是一个非常奇怪的问题(也许我可能会被建议不要做这么奇怪的事情)但是如果我有v_str ='var_name'中的字符串并且我想将该代码的内容转换为实际的代码,在MATLAB中是可能的吗?如:

v_str = 'var_name'
x = make_string_to_code(v_str)

转换为正常运行的代码:

x = var_name

只是将字符串转换为实际代码。

我想到这一点的唯一方法是用一个代码写一个文件,然后在下一行执行那个罚款,但我想避免每次我想要这样做时都写文件。

另外,为什么不建议这样做?为什么它如此糟糕

1 个答案:

答案 0 :(得分:1)

你可以使用eval,但这并不意味着你应该像其他人所说的那样。

v_str = '2 + 2'
eval(['x = ' v_str]) % x = 4;
x = eval(v_str); % x = 4;

eval的文档可在此处找到:eval