在Matlab中,很容易为函数生成“帮助”,如下所示。
function out = foo()
% helpful information about foo
end
执行help foo
时,会得到“有关foo的有用信息”。
但是,假设我们想为变量定义帮助,可能是作为定义。我们该怎么做?如果我们可以做类似的事情
x = 3; % m ... position
help x
并获得“ m ...位置”。但是,我不相信这种功能存在。
我看到的唯一合理的方法是使用键struct
和value
将每个变量定义为description
。
x.value = 3;
x.description = 'm/s ... position';
这要求我们将每个变量都定义为struct
,这很烦人,我担心(应该吗?)表现不佳(它是模拟代码,并且这些变量会被重复访问)。
还有其他我没有考虑的解决方案吗?我应该担心将每个变量都设为struct
吗?
答案 0 :(得分:1)
您的代码应该是自我记录的。代替变量名x
,使用position
。
此外,所有变量都应为局部变量,因此您可以在正在编辑的函数中轻松查找其定义(带注释)。
声明得更远(在函数中具有较大作用域)的变量应比具有较小作用域(例如在短循环中使用)的变量具有更长,更多的不言自明的名称。
只有两种情况在函数范围之外声明变量:
在脚本中,您可以访问脚本启动之前已经存在的变量。在大型项目中不使用脚本或不依赖基本名称空间的充分理由。
全局变量。出于多种原因,您永远不要使用全局变量。只是不要。