How to define a nested function inside a for loop?
Mostrar comentarios más antiguos
I wish to define a nested function inside a for loop. When I did it I encountered an error. When I further inquired I found the following:
``You cannot define a nested function inside any of the MATLAB® program control statements, such as if/elseif/else, switch/case, for, while, or try/catch."
which is available at
https://www.mathworks.com/help/matlab/matlab_prog/nested-functions.html#btfml3d
Any by pass to this? Can I define a nested function inside a loop?
Thank you.
4 comentarios
KL
el 1 de Dic. de 2017
why do you want to do this?
vikas mishra
el 1 de Dic. de 2017
Matt J
el 1 de Dic. de 2017
Your attached files contain neither loops nor nested functions. They therefore cannot clarify where you are trying to place a nested function, nor why you think it needs to go inside a loop.
vikas mishra
el 1 de Dic. de 2017
Respuestas (1)
There should be no need to place a nested function definition inside a loop. My advice would be to simply move it outside the loop, placing it somewhere else in the same workspace. As long as the nested function resides in the same workspace as the loop, they should both have access to all variables in that workspace.
Categorías
Más información sobre Loops and Conditional Statements en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!