Call a function in a sub directory?

24 visualizzazioni (ultimi 30 giorni)
TallBrian
TallBrian il 6 Dic 2019
Risposto: Walter Roberson il 6 Dic 2019
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
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

Scopri di più su File Operations in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by