How to call function using list element?

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

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 App Building in Help Center and File Exchange

Asked:

on 28 Sep 2019

Answered:

on 28 Sep 2019

Community Treasure Hunt

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

Start Hunting!