Заголовочные файлы Matlab

#matlab #header-files

#matlab #заголовочные файлы

Вопрос:

У меня есть некоторая часть кода, которая повторяется в ряде функций matlab (.m файлов). Я хочу поместить код в функции, которые могут быть определены в одном файле (скажем, CommandHelper.m), и использовать эти функции в моих оригинальных файлах .m. (точно так же, как определено в заголовочных файлах). Возможно ли это?

Комментарии:

1. Вы можете поместить эти функции в отдельные m-файлы, назвать их так же, как функцию, определенную внутри, убедиться, что они находятся в том же каталоге, что и ваш «основной» m-файл, и вызывать эти функции точно так же, как любую другую функцию в matlab. Послужит ли это вашей цели?

Ответ №1:

MATLAB поставляется с полнофункциональной объектной моделью, описанной в объектно-ориентированном программировании. Вы можете предоставить свои вспомогательные функции в виде статических методов.

 classdef CommandHelper   
    methods (Static)
        function text = firstCommand()
           text = 'firstCommand'; 
        end

        function text = secondCommand()
           text = 'secondCommand'; 
        end
    end       
end
  

Вспомогательные функции могут вызываться из командной строки или любой другой функции, скрипта со следующим синтаксисом.

 >> CommandHelper.firstCommand

ans = firstCommand

>> CommandHelper.secondCommand

ans = secondCommand