Я хотел бы определить перечисления и константы локально в рамках функции.
Я видел, что MATLAB предоставляет перечисления и константы как часть своей объектно-ориентированной среды программирования.Однако, если вы попытаетесь определить их в рамках функции, они не будут работать.Например, MATLAB выдает сообщение «Ошибка разбора: неверный синтаксис», если вы пытаетесь выполнить следующее:
function output = my_function(input)
classdef my_constants
properties (Constant)
x = 0.2;
y = 0.4;
z = 0.5;
end
end
classdef colors
enumeration
blue, red
end
end
statements;
Причина, по-видимому, заключается в том, что каждый classdef
должен быть определен в своем собственном .m
файле.
Я бы не хотел иметь файл .m
для каждого перечисления или набора констант, которые я использую.Есть ли способ сделать это?Какие у меня варианты?
Приложение 1:
Синус Меня попросили привести пример, вот один в псевдокод .В этом примере показана моя потребность в определении и использовании локальных перечислений.
Скажем, у меня есть тип перечисления с именем colors
, который может быть RED
или BLUE
.Я хотел бы определить colors
локально в моей функции и использовать его для управления потоком моих выражений в функции:
function output = my_function(input)
# ....
# Code that defines the enumeration 'colors'
#....
my_color = colors;
# ... code that changes 'my_color' ...
switch my_color
case RED
do this
case BLUE
do that;
end
Приложение 2:
Могу ли я сделать это с помощьюиспользуя код Java?Если да, то как?