Строка для перечисления

У меня есть счетчик:

classdef Commands

    properties
        commandString;
        readonly;
    end
    methods
        function obj = Commands(commandString, readonly)
            obj.commandString = commandString;
            obj.readonly= readonly;
        end
    end
    enumeration
        PositionMode('p', false)
        TravelDistance('s', false)
    end
end

и у меня есть строка:

currentCommand = 'PositionMode';

Я хочу иметь возможность вернуться:

Commands.PositionMode

Есть ли лучшее решение, чем

methods(Static)
    function obj = str2Command(string)
        obj = eval(['Commands.' string]);
    end
end
5
задан tshepang 6 March 2014 в 09:04
поделиться