Задайте интерфейс MATLAB для библиотеки C++

Полные определения

После создания файла определения definelibName.mlx использование clibgen.generateLibraryDefinition, вам придется изменить содержимое, чтобы включать функциональность в интерфейс. Используйте Live Editor, чтобы изменить файл. Для получения дополнительной информации смотрите, Задают Недостающую информацию для Подписей MATLAB.

Автозадайте аргументы

Можно направить MATLAB, чтобы автозадать тип и форму определенных типов аргумента с помощью clibgen.generateLibraryDefinition и clibgen.buildInterface аргументы в виде пар имя-значение. Опции:

  • Обрабатывать весь const символьные указатели в библиотеке как отключенные пустым указателем струны до, набор аргумент 'TreatConstCharPointerAsCString' к true.

  • Чтобы обработать все объектные указатели в библиотеке как скаляры, установите аргумент 'TreatObjectPointerAsScalar' на true.

Однако, когда вы подтверждаете определение библиотеки, вы можете получить ошибки о дублирующихся подписях MATLAB®. Чтобы разрешить эти ошибки, смотрите, Согласовывают Конфликты Подписи MATLAB.

Согласуйте конфликты подписи MATLAB

После генерации и редактирования файла определения библиотеки, может быть две или больше функции или другие построения с идентичными подписями MATLAB. Чтобы проверять на этот конфликт, подтвердите файл определения. Например, для файла определения definelibnameВвод:

definelibname

Если существует конфликт, MATLAB отображает ошибку со ссылкой на код в файле определения. Чтобы разрешить конфликт, выберите одно из следующего:

  • Пересмотрите defineArgument или defineOutput аргументы, чтобы создать уникальную подпись MATLAB. Конфликт происходит, когда существует несколько перегруженных функций, и вы задаете те же параметры аргумента. Смотрите Задают Недостающую информацию для Подписей MATLAB.

  • Удалите одну из функций путем комментирования определения построения. Конфликт может произойти, когда вы используете один из clibgen.generateLibraryDefinition аргументы пары "имя-значение", чтобы автоматически преобразовать все случаи конкретного типа. Также можно удалить перегруженную функцию.

После изменения файла определения, повторно выполненного файл, чтобы подтвердить ваши редактирования.

Настройте содержимое

Рассмотрите схему переименования, используемую MATLAB, чтобы заменить недопустимые имена. Для получения дополнительной информации смотрите Имена C++, Которые Недопустимы в MATLAB.

Рассмотрите автоматически сгенерированную справку. MATLAB автоматически копирует некоторые комментарии C++ в Description и DetailedDescription аргументы. Можно изменить или заменить это содержимое, которое является основанием doc команда для конечных пользователей.

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

|

Похожие темы