Many functions in a large script file
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
sadi tavakoli
le 20 Juin 2019
Commenté : Walter Roberson
le 26 Juin 2019
I am wondered how can I add nested functions in a parent function in a while loop. Is that possible?
At the moment, the script file works with calling functions, but I need to compile the script code. Any idea?
0 commentaires
Réponse acceptée
Walter Roberson
le 20 Juin 2019
"I am wondered how can I add nested functions in a parent function in a while loop. Is that possible?"
No. functions cannot be defined inside of control structures.
"At the moment, the script file works with calling functions, but I need to compile the script code."
Add a function header at the top of the file, and add an "end" statement before the first "function" that you have defined in the file.
2 commentaires
Steven Lord
le 20 Juin 2019
No, as Walter said there is no way to define a nested function inside a while loop.
Why do you believe you need to do that? Why do you believe nesting the function before or after the while loop is not an option? If you're trying to use the nested function inside the loop and believe that means you need to define it inside the loop, that's not the case. Yes, I know this is one of the least efficient ways to create this vector, but it was quick to write.
function x = nestedFunctionExample
n = 10;
x = [];
while n > 0
callNestedFunction;
end
function callNestedFunction
x = [x n];
n = n-1;
end
end
This same example would have worked identically if I had defined it:
function x = nestedFunctionExample
n = 10;
x = [];
function callNestedFunction
x = [x n];
n = n-1;
end
while n > 0
callNestedFunction;
end
end
What you can't do is this:
function x = nestedFunctionBADExample
n = 10;
x = [];
while n > 0
function callNestedFunction
x = [x n];
n = n-1;
end
callNestedFunction;
end
end
Plus de réponses (1)
sadi tavakoli
le 25 Juin 2019
1 commentaire
Walter Roberson
le 26 Juin 2019
It sounds as if for some reason Solution.m or the @Solution directory is not being added to the project files.
Voir également
Catégories
En savoir plus sur Startup and Shutdown dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!