How to detect ~ in output argument list, so as to avoid memory allocation inside called function

8 visualizaciones (últimos 30 días)
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

Respuestas (1)

Sean de Wolski
Sean de Wolski el 23 de Mzo. de 2015
Pass in an extra input parameter as a flag that the function can use to dictate the expected behavior.

Categorías

Más información sobre Argument Definitions en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by