捕获传递给matlab函数的变量名

时间:2014-01-15 15:17:01

标签: matlab function parameter-passing

有没有办法从新函数中获取传递给matlab函数的结构名称。

示例:

y = fnX(StructName) % call function



function[y] = fnX(name)

% here is where I want to capture StructName as char text.

end

似乎结构已重命名,原始名称在函数中丢失。有什么建议吗?

2 个答案:

答案 0 :(得分:2)

我能给出的最佳建议,不是依赖于变量的名称。

可以通过inputname来实现,但让名称或您感兴趣的任何信息存储在变量中会更自然。例如,通过向结构添加字段。

这应该允许更多的代码灵活性和可重用性,同时可能提高可读性。

答案 1 :(得分:1)

您需要使用inputname

function[y] = fnX(name)

% here is where I want to capture StructName as char text.
StructName = inputname(1);

end