функция 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]; }
Функциональная подпись:
Возвратите тип | Имя | Аргументы |
---|---|---|
cstring | readEnum | (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'