Call a function in a sub directory?

Suppose a have a folder "folder1" which contains a function "sayhi.m". "folder1" contains a subfolder "subfolder1" which contains an identically named function "sayhi.m".
Is it possible to call both functions from a function in the root folder? Or, how can I override the default call to the local function and force the call of the non-local function?
thanks!

Risposte (2)

Matt J
Matt J il 6 Dic 2019
Modificato: Matt J il 6 Dic 2019
The only way, I believe, is to visit each folder and create a function handle to each respective version of sayhi(),
cd folder1
h1=@sayhi;
cd folder2
h2=@sayhi;
cd ../
Once you have the handles h1() and h2(), you can invoke them from whatever folders you wish.
Walter Roberson
Walter Roberson il 6 Dic 2019

0 voti

cd to the inner directory and create a handle to the function, and cd back. Now when you invoke the handle you get the inner function no matter what your current directory is

Categorie

Richiesto:

il 6 Dic 2019

Risposto:

il 6 Dic 2019

Community Treasure Hunt

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

Start Hunting!

Translated by