Do I have to redefine my cleanup object when input arguments change?

2 次查看(过去 30 天)
I have a cleanup function that relies on a couple of arguments that alter the behavior of the cleanup routine:
function MainFunction()
x=1;
y=1;
cleanupObj = onCleanup(@()cleanupFun(x,y));
end
function cleanupFun(x,y)
if(x)
%do something
end
if(y)
%do another thing
end
end
Now, in my broader use case, x and y will be changing many times throughout the life of MainFunction. Do I have to redefine my cleanupObj everytime x or y changes? For my case this would be quite ugly.
Another idea I've thought of is making use of the fact that x and y are changed by subfunctions. Is it possible to pass the cleanup object handle to these subfunctions so that I can redefine the cleanup object handle from within the subfunction, rather than redefining it after each call to the sub function?

回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Problem-Based Optimization Setup 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by