Пример mexatexit.cpp показывает функции обработки файла C++. Сравните его с примером кода С mexatexit.c, который использует функцию mexAtExit.
Пример C++ использует класс fileresource, чтобы обработать файл открытые и близкие функции. Файл MEX вызывает деструктор для этого класса (который закрывает файл данных). Этот пример также распечатывает сообщение на экране при выполнении операций на файле данных. Однако в этом случае единственная выполняемая операция файла C является операцией записи, fprintf.
Чтобы создать файл MEX mexatexit.cpp, введите:
mex mexatexit.cppВвод:
z = 'for the C++ MEX-file'; mexatexit(x) mexatexit(z) clear mexatexit
Writing data to file. Writing data to file.
Отобразите содержимое matlab.data.
type matlab.datamy input string for the C++ MEX-file
Пример кода С регистрирует функцию mexAtExit, чтобы выполнить задачи очистки (закройте файл данных), когда файл MEX очищается. Этот пример распечатывает сообщение на экране (использующий mexPrintf) при выполнении операций fopen файла, fprintf и fclose.
Чтобы создать файл MEX mexatexit.c, введите:
mex mexatexit.cЗапустите пример.
x = 'my input string';
mexatexit(x)
Opening file matlab.data. Writing data to file.
Очистите файл MEX.
clear mexatexitClosing file matlab.data.
Отобразите содержимое matlab.data.
type matlab.datamy input string