Передайте примеры перечислимых типов

readEnum Функция

readEnum функция в shrlibsample библиотека отображает строку, которая совпадает с входным параметром.

EXPORTED_FUNCTION char* readEnum(TEnum1 val)
{
	 static char outputs[][20] = { 
        {"You chose en1"}, 
        {"You chose en2"}, 
        {"You chose en4"}, 
        {"enum not defined"}, 
        {"ERROR"} };

	 switch (val) {
        case en1: return outputs[0];
        case en2: return outputs[1];
        case en4: return outputs[2];
        default : return outputs[3];
    }
    return outputs[4];
}

Функциональная подпись:

Возвратите типИмяАргументы
cstringreadEnum(Enum1)

Значения для Enum1 вход задан в shrlibsample.h заголовочный файл.

typedef enum Enum1 {en1 = 1, en2, en4 = 4} TEnum1;

Отображение перечислимых величин

В этом примере показано, как передать перечислимые величины readEnum функция в shrlibsample библиотека. Загрузите библиотеку.

if not(libisloaded('shrlibsample'))
    addpath(fullfile(matlabroot,'extern','examples','shrlib'))
    loadlibrary('shrlibsample')
end

В MATLAB можно описать перечислимый тип или как строку перечисления или как ее эквивалентное числовое значение. Вызовите readEnum с аргументом строки.

calllib('shrlibsample','readEnum','en4')
ans = 
'You chose en4'

Вызовите readEnum с эквивалентным числовым аргументом. Enum1 определение объявляет перечисление en4 равняйтесь 4.

calllib('shrlibsample','readEnum',4)
ans = 
'You chose en4'

Похожие темы