Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 其它 > 资料存档
资料存档 资料存档
 
 
主题工具 显示模式
旧 2019-12-14, 20:13   #1
poster
高级会员
 
注册日期: 2019-11-21
帖子: 3,006
声望力: 66
poster 正向着好的方向发展
帖子 MATLAB:从函数内部加载

我有一个MATLAB函数,需要访问一些largeFile.mat的数据。如果(为了避免污染全局名称空间)我在函数中放入了load命令,则MATLAB将在每次调用该函数时重新加载largeFile,还是足够聪明以在两次调用之间缓存largeFile?例如

function hello() load largeFile.mat; display('hi'); end for i=1:1000 hello(); end 我应该将load命令保留在函数中,还是应该执行一次并以arg形式传递largeFile的数据?谢谢!



回答:

Matlab会在每次调用时加载它,因此调用一次并将其作为输入要快得多。如果您不想使工作区混乱,建议您将文件加载到这样的结构中

L =负载('largeFile.mat');

编辑:我对您的hello()函数和我的.mat文件之一进行了快速测试。将其加载到函数中并运行100次,我用了43.29秒。加载一次并将其作为输入进行100次运行需要0.41秒,因此时间差很大。



更多&回答...
poster 当前离线   回复时引用此帖
 


发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛禁用 表情符号
论坛启用 [IMG] 代码
论坛启用 HTML 代码



所有时间均为北京时间。现在的时间是 02:54


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.