在不使用函数的情况下保留matlab脚本中的变量
我在matlab中有一个原始脚本,它在当前工作目录中运行一个名为“param_file.m”的参数文件,代码如下:在不使用函数的情况下保留matlab脚本中的变量,matlab,Matlab,我在matlab中有一个原始脚本,它在当前工作目录中运行一个名为“param_file.m”的参数文件,代码如下: param_file; % this is used for parameter decleration before each run... 运行上面的程序后,我可以保留变量。。。 然后我运行另一个使用前面参数的函数 perform_work(); 现在我想以批处理模式运行上述函数,因此我将上述函数包装为: function doStuffUsingParams(para
param_file; % this is used for parameter decleration before each run...
运行上面的程序后,我可以保留变量。。。
然后我运行另一个使用前面参数的函数
perform_work();
现在我想以批处理模式运行上述函数,因此我将上述函数包装为:
function doStuffUsingParams(param_file_name)
run(param_file_name);
perform_work();
不幸的是,运行(参数文件名);不会像第一个示例那样返回变量。
任何建议都将不胜感激
谢谢
perform_work()
您可能需要将第一个函数的地址提供给
正确运行命令。有关更多信息,请查看此示例。或者,您可以将这两个函数放在同一个文件夹中run(param_file_name);
它实际上带来了工作区中的一切
但是在函数doStuffUsingParams完成工作后
自动清除工作区function doStuffUsingParams(param_file_name)
run(param_file_name);
disp(param1)
perform_work();
在运行后放置断点,我可以看出您不幸弄错了。执行run(…)不会将任何变量返回到工作区中…我的意思是,将Bp放在run上,当跳过时,您将看到函数正在工作,并且变量是不可见的。然后走出这一行,变量仍然应该在那里,你可以通过一个简单的disp测试来测试它。但是在主函数突然通过最后一行之后,所有变量都将无法访问。