На данный момент нет действительно хорошего ответа. Если вы хотите просто определить простую переменную, которая будет отображаться в вашем рабочем пространстве, тогда
f00 = 88;
очевидно работает. Но это не будет видно внутри других функций. Таким образом, вы можете определить ее как глобальную переменную, но тогда вам нужно объявить каждую переменную как глобальную внутри каждой функции, которая в этом нуждается. Мне это кажется клуджем. Немного лучше ИМХО, это определить m-файл функции для foo.
function returnvalue = f00
% returns the scalar value of 88
returnvalue = 88;
(Обратите внимание, что у меня есть строка комментария. Она возвращается, когда вы также вызываете help foo, lookfor также увидит эту строку. Лучше справка, чем рекомендуется, но сейчас мне лень). *
Пока foo.m находится в вашем пути поиска, это всегда возвращает значение 88. Обратите внимание, что я не включил аргументы. Но вы могли бы быть более креативными и, возможно, позволить аргумент размера, чтобы foo (N) вел себя так же, как нули, единицы и глаза. Это хорошая вещь об использовании функции здесь. Это может сделать именно так, как вы хотите. Так что, возможно ...
function returnvalue = f00(varargin)
% returns the scalar value of 88, or replicated elements if a size is supplied
% usage: foo
% usage: foo(N)
% usage: foo(N1,N2,...)
%
% arguments:
% N - a scalar or vector that denotes the number
% of repeated elements (all 88) to be generated
%
% returnvalue - a scalar (or vector/array) of
% size indicated by N.
%
% see also: ones, zeros, eye
if (nargin == 0)
% no arguments, so return a scalar 88
returnvalue = 88;
elseif (nargin == 1) && isscalar(varargin{1})
% be consistent with ones, zeros, eye, etc.
returnvalue = repmat(88,[varargin{1},varargin{1}]);
elseif (nargin == 1)
% the size is a vector already
if isvector(varargin{1})
returnvalue = repmat(88,varargin{1});
else
error('FOO:impropersize','Size argument cannot be a general array')
end
elseif
% nargin must have been more than 1
returnvalue = repmat(88,cell2mat(varargin));
end
Возможно, я мог бы сделать чуть лучше проверку ошибок выше, но вы должны получить общее представление.