Требования к интерфейсам создания к библиотекам C++

Общая библиотека является набором классов и функций, динамически загружаемых приложением во время выполнения. MATLAB® интерфейс к разделяемой библиотеке C++ поддерживает библиотеки, содержащие функциональность, заданную в заголовке C++ и исходных файлах. Вы должны иметь возможность компилировать заголовки в среде разработки C++ и использовать функциональность в приложениях C++.

Исходные файлы CPP и файлы заголовков

Чтобы опубликовать интерфейс MATLAB в библиотеке C++, определите определенные функциональные возможности, которые необходимо включить в интерфейс, и связанные файлы заголовков, содержащие эти функциональные возможности.

Можно использовать код примера библиотеки в качестве начальной точки для создания .hpp заголовочный файл. Код примера содержит соответствующие заголовочные файлы в #include операторы. Скопируйте .cpp код в текстовый редактор. Удалите main функция и ее реализация. Сохраните файл с .hpp расширение файла. Имя этого файла: CppFiles аргумент для clibgen.buildInterface или clibgen.generateLibraryDefinition функций.

Общие файлы библиотеки

MATLAB поддерживает 64-разрядные динамические библиотеки на этих платформах:

ПлатформаОбщая библиотекаРасширение файла

Microsoft® Windows®

Файл библиотеки с динамической связью

.dll

Импорт файла библиотеки

.lib

Linux®

Общий файл объекта

.so

Apple macOS

Файл динамической общей библиотеки

.dylib

Зависимости компилятора

Чтобы создать интерфейс MATLAB для библиотеки C++, вам нужен установленный, поддерживаемый MATLAB компилятор C++. Обновленный список поддерживаемых компиляторов см. в Поддерживаемые и совместимые компиляторы.

Вы должны создать интерфейс для библиотеки с помощью того же компилятора, который использовался для создания библиотеки C++. Если ваша библиотека предназначена только для заголовка (не использует общий файл библиотеки), можно выбрать любой поддерживаемый компилятор C++, чтобы создать библиотеку интерфейсов.

Примечание

Не каждый компилятор C++ поддерживает каждую функцию C++.

Похожие темы

Внешние веб-сайты