Create function handle from function file

9 views (last 30 days)
Is it possible to create a function handle from function file ? In other words, create a function_handle object @foo from file foo.m.

Accepted Answer

Star Strider
Star Strider on 10 Mar 2020
Edited: Steven Lord on 10 Mar 2020
Yes!
In some instances, that is necessary in order to evaluate the function.
Example —
function y = f(x)
y = x.^2 - 2;
end
fz = fzero(@f,1)
produces:
fz =
1.4142
[SL: typo fix]
  8 Comments
Arthur Roué
Arthur Roué on 11 Mar 2020
Thanks for your answer Steven Lord, it's a nice way to call a function not in scope.
I do use the testsuite call to run my tests. The reason why I run it in a separate MATLAB session is because I also loop on MATLAB versions to ensure the compatibility ot the toolbox I created in several MATLAB versions.
tommsch
tommsch on 30 Nov 2020
@Steven Lord
The function for which you want to create the function handle must be in scope when the function handle is created. It does not need to be in scope when the function handle is evaluated.
When the function is shadowed by another function later on, the function handle may point to another function.

Sign in to comment.

More Answers (0)

Categories

Find more on Performance and Memory in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!