How to call function using list element?

5 views (last 30 days)
I want to call function using list(array) element.
example :
list = {'sub_function','semi_function'};
function_list = split(list);
test = string(algoritm_list(1));
test(handles);
function sub_function(handles)
disp("sub_function")
But I can't call function this way.
how?... is it impossible??..

Accepted Answer

Stephen23
Stephen23 on 28 Sep 2019
Use str2func, e.g.:
function test()
C = {'sub1','sub2'};
F = cellfun(@str2func,C,'uni',0);
for k = 1:numel(F)
F{k}()
end
end
function sub1()
disp('hello')
end
function sub2()
disp('world')
end
Which when I run it, displays this in the command window:
>> test()
hello
world

More Answers (0)

Categories

Find more on Testing Frameworks 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!