2016-06-26 61 views
5

Mam ogromny projekt wykonany w MATLAB, z plikami skryptowymi 15-18. Zrozumienie całego kodu staje się bardzo trudne. Myślałem, że jeśli umieściłem niektóre skrypty w innym folderze, zrozumienie i utrzymanie kodu będzie bardzo proste. czy jest to możliwe do zrobienia?Jak wywołać funkcję umieszczoną w innym katalogu w Matlab?

Rozważmy poniższą strukturę katalogów:

enter image description here

Jak mogę wywołać funkcję z main.m, który jest umieszczony w func.m w Folder 1?

Odpowiedz

9

Instrukcja rozwiązanie

wykonać następujące czynności:

  1. prawym przyciskiem myszy na folderze, który znajduje się na szczycie hierarchii.
  2. kliknij na Dodaj do ścieżki
  3. Kliknij na wybrane foldery i podfoldery

Na tym etapie, skrypty będą mogli zidentyfikować jakąkolwiek funkcję lub skrypt, który znajduje się w jednej z wewnętrznych podfolderów które wybrali. Ponadto można wywołać dowolny skrypt i funkcję, którą chcesz, po prostu wpisując jej nazwę w wierszu poleceń.

rozwiązanie Kod

Zamiast robić tego ręcznie, możliwe jest także, aby dodać foldery i podfoldery do ścieżki za pomocą następującego kodu:

addpath(genpath(<path to your directory>)) 

Przykład

The struktura drzewa bieżącej ścieżki Matlab

enter image description here

Możesz dodać funkcje i skrypty z katalogu 1 na ścieżce albo przez pisanie następujący kod:

addpath(genpath('Folder 1')) 

lub za pomocą „dodając foldery i podfoldery” opcję z menu:

enter image description here

Po robią tak, że jest możliwe wywołanie func prosto z głównej