Если вы создали matrixOperations
интерфейс в примере Публикует Интерфейс к Разделяемой Библиотеке C++ по Windows, затем можно использовать его в следующем примере. Перейдите к папке, которую вы использовали в примере. Этот пример принимает matrixOperations.dll
интерфейсный файл находится в этой папке:
C:\Documents\matrixexample\matrixlib
В подсказке операционной системы добавьте, что путь к C++ совместно использовал файл библиотеки. Для получения дополнительной информации смотрите Установленный Путь Библиотеки времени выполнения для Интерфейса C++.
set PATH=rtPath;%PATH%
где rtPath
выход:
rtPath = fullfile(fullfile(matlabroot,'extern','examples','cpp_interface'),'win64','mingw64')
Например, введите эту команду где release
папка релиза MATLAB® как R2021a
.
set PATH=C:\Program Files\MATLAB\release\extern\examples\cpp_interface\win64\mingw64;%PATH%
StartMatlab. Чтобы добавить файл интерфейса MATLAB в путь MATLAB, перейдите к папке, которую вы использовали в опубликовать примере.
addpath(pwd)
В командной строке MATLAB отобразите справку для интерфейса. В примере, clibgen.generateLibraryDefinition
команда изменила название интерфейса к matrixOperations
к matrixlib
. Введите эту команду, чтобы загрузить пакет.
doc clib.matrixlib.Mat
Чтобы отобразить члены пакета, введите:
doc clib.matrixlib
Classes contained in clib.matrixlib: Mat - clib.matrixlib.Mat Representation of C++ class Mat Functions contained in clib.matrixlib: addMat - clib.matrixlib.addMat Representation of C++ function addMat updateMatByX - clib.matrixlib.updateMatByX Representation of C++ function updateMatByX updateMatBySize - clib.matrixlib.updateMatBySize Representation of C++ function updateMatBySize
Чтобы отобразить подписи для функции пакета, щелкните по ссылкам для addMat
, updateMatByX
, и updateMatBySize
.
clib.matrixlib.addMat Representation of C++ function addMat inputs mat read-only clib.matrixlib.Mat outputs RetVal int32 clib.matrixlib.updateMatByX Representation of C++ function updateMatByX inputs mat clib.matrixlib.Mat X int32 outputs clib.matrixlib.updateMatBySize Representation of C++ function updateMatBySize inputs mat clib.matrixlib.Mat arr int32 outputs
Отобразить информацию о классе clib.matrixlib.Mat
, щелкните по ссылке для Mat
.
clib.matrixlib.Mat Representation of C++ class Mat Method Summary: Mat - clib.matrixlib.Mat Constructor of C++ class Mat Mat - clib.matrixlib.Mat Constructor of C++ class Mat setMat - clib.matrixlib.Mat.setMat Method of C++ class Mat getMat - clib.matrixlib.Mat.getMat Method of C++ class Mat getLength - clib.matrixlib.Mat.getLength Method of C++ class Mat copyMat - clib.matrixlib.Mat.copyMat Method of C++ class Mat
Чтобы отобразить подписи конструктора и сигнатуры методов, используйте methods
или methodsview
функции. Например, введите:
methodsview clib.matrixlib.Mat
Протестируйте функции в интерфейсе. Например, введите:
matObj = clib.matrixlib.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