MATLAB爱好者论坛-LabFans.com

MATLAB爱好者论坛-LabFans.com (https://www.labfans.com/bbs/index.php)
-   资料存档 (https://www.labfans.com/bbs/forumdisplay.php?f=72)
-   -   MATLAB:从函数内部加载 (https://www.labfans.com/bbs/showthread.php?t=26389)

poster 2019-12-14 20:13

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的数据?谢谢!



[B]回答:[/B]

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

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

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



[url=https://stackoverflow.com/questions/5066262]更多&回答...[/url]


所有时间均为北京时间。现在的时间是 03:01

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