25

在 Matlab 中,我怎样才能得到一个包含"GRUMPY"给定以下声明的字符串:

  GRUMPY = 500;

这通常在其他编程语言中称为反射,但我在 Matlab 中找不到它的示例。

4

2 回答 2

41

MATLAB 没有为此提供内置功能,但有一种解决方法,如此处所采用

本质上,您必须创建自己的函数来执行此操作。利用 Matlab 的功能将 INPUT ARGUMENT 的变量名称传递给函数。

IE

function out = varname(var)
  out = inputname(1);
end

然后

GRUMPY = 500;
name = varname(GRUMPY)

会给你你想要的。

于 2012-07-12T13:51:11.850 回答
2

如果我理解正确,您应该尝试

who GRUMPY 

或者

which GRUMPY 
于 2012-07-12T13:53:44.470 回答