Если вы создали matrixOperations интерфейс в примере Публикует Интерфейс к Разделяемой Библиотеке C++ по Windows, затем можно использовать его в следующем примере. Пример принимает matrixOperations.dll интерфейсный файл находится в этой папке:
H:\Documents\MATLAB\publisher\matrixexample\myPkg
В подсказке операционной системы добавьте, что путь к C++ совместно использовал файл библиотеки. Для получения дополнительной информации смотрите Установленный Путь Библиотеки времени выполнения для Интерфейса C++.
set PATH=rtPath;%PATH%
где rtPath выход:
rtPath = fullfile(fullfile(matlabroot,'extern','examples','cpp_interface'),'win64','mingw64')
Например, тип:
set PATH=C:\Program Files\MATLAB\R2019a\extern\examples\cpp_interface\win64\mingw64;%PATH%
Запустите MATLAB®. Добавьте файл интерфейса MATLAB в путь MATLAB.
addpath('H:\Documents\MATLAB\publisher\matrixexample\myPkg')В командной строке MATLAB отобразите справку для интерфейса. В примере, clibgen.generateLibraryDefinition команда изменила название интерфейса к matrixOperations к myPkg. Введите эту команду, чтобы загрузить пакет.
help clib.myPkg.MatЧтобы отобразить членов пакета, введите:
help clib.myPkgClasses contained in clib.myPkg: Mat - clib.myPkg.Mat Representation of C++ class Mat Functions contained in clib.myPkg: addMat - clib.myPkg.addMat Representation of C++ function addMat updateMatByX - clib.myPkg.updateMatByX Representation of C++ function updateMatByX updateMatBySize - clib.myPkg.updateMatBySize Representation of C++ function updateMatBySize
Чтобы отобразить подписи для функции пакета, щелкните по ссылкам для addMat, updateMatByX, и updateMatBySize.
clib.myPkg.addMat Representation of C++ function addMat
inputs
mat read-only clib.myPkg.Mat
outputs
RetVal int32
clib.myPkg.updateMatByX Representation of C++ function updateMatByX
inputs
mat clib.myPkg.Mat
X int32
outputs
clib.myPkg.updateMatBySize Representation of C++ function updateMatBySize
inputs
mat clib.myPkg.Mat
arr int32
outputs
Отобразить информацию о классе clib.myPkg.Mat, щелкните по ссылке для Mat.
clib.myPkg.Mat Representation of C++ class Mat Method Summary: Mat - clib.myPkg.Mat Constructor of C++ class Mat Mat - clib.myPkg.Mat Constructor of C++ class Mat setMat - clib.myPkg.Mat.setMat Method of C++ class Mat getMat - clib.myPkg.Mat.getMat Method of C++ class Mat getLength - clib.myPkg.Mat.getLength Method of C++ class Mat copyMat - clib.myPkg.Mat.copyMat Method of C++ class Mat
Чтобы отобразить подписи конструктора и сигнатуры методов, используйте methods или methodsview функции. Например, введите:
methodsview(clib.myPkg.Mat)
Протестируйте функции в интерфейсе. Например, введите:
matObj = clib.myPkg.Mat; % Create a Mat object intArr = [1,2,3,4,5]; matObj.setMat(intArr); % Set the values to intArr retMat = matObj.getMat(5) % Display the values
retMat = 1×5 int32 row vector 1 2 3 4 5