How to detect ~ in output argument list, so as to avoid memory allocation inside called function
显示 更早的评论
We need a mechanism to detect ~ in the output argument list from inside the called function. I have a very real use case where such detection inside the called function would avoid unnecessary memory allocation of a significant amount.
After all, we do have inputname(), why do we not have outputname()?
In caller scope:
[~,~,c] = myFunction(stuff);
Definition of myFunction:
function [a,b,c] = myFunction(varargin)
if weHaveATildaInOutputArgument(1)
% avoid allocating a huge amount of memory for parameter, a.
else
% allocate memory for output parameter, a.
etc.
end
return
回答(1 个)
Sean de Wolski
2015-3-23
0 个投票
Pass in an extra input parameter as a flag that the function can use to dictate the expected behavior.
类别
在 帮助中心 和 File Exchange 中查找有关 Argument Definitions 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!