Обработка файлов с C++

Пример mexatexit.cpp показывает функции обработки файла C++. Сравните его с примером кода С mexatexit.c, который использует функцию mexAtExit.

Пример C++

Пример 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.data
my input string
for the C++ MEX-file

C пример

Пример кода С регистрирует функцию 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 mexatexit
Closing file matlab.data.

Отобразите содержимое matlab.data.

type matlab.data
my input string

Смотрите также

Похожие темы