Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

Bibliotecas de C++

Llamar directamente a funciones de la biblioteca de C++ desde MATLAB®

Si tiene una biblioteca compartida de C++ que exporta funciones que se pueden llamar desde otra aplicación, entonces puede usar estas clases y funciones directamente en MATLAB, gracias al intercambio de datos que se produce entre MATLAB y C++.

Para empezar, primero debe publicar una biblioteca de interfaces utilizando lo siguiente.

  • Un archivo de biblioteca compartida: .dll en Windows®, .so en Linux® o .dylib en macOS

  • Uno o más archivos de encabezado que contienen declaraciones de todas las funciones que exporta la biblioteca

  • Un archivo de biblioteca de importación (opcional): .lib

  • Un compilador C++ compatible con MATLAB

Si usted ya tiene la interfaz, puede llamar a las funciones en la biblioteca mediante la sintaxis clib.packagename. La biblioteca se debe encontrar en la ruta de búsqueda de su sistema o la ruta de tiempo de ejecución. Para obtener más información, consulte Llamar a funciones en la biblioteca compartida de C++.

Si llama a funciones en bibliotecas de C mediante la función calllib, entonces consulte Bibliotecas de C.

Si escribe funciones de C/C++ en archivos MEX, entonces consulte Aplicaciones de C++ MEX o Aplicaciones del archivo C MEX.

Funciones

clibgen.generateLibraryDefinitionCreate definition file for C++ library
clibgen.buildInterfaceCreate interface to C++ library without definition file
clibReleaseRelease C++ object from MATLAB
underlyingValueUnderlying numeric value for C++ enumeration object created in MATLAB

Clases

clibgen.LibraryDefinitionMATLAB definition for C++ library
clibgen.ClassDefinitionDefinition for MATLAB class corresponding to C++ class
clibgen.ConstructorDefinitionDefinition for MATLAB function corresponding to C++ class constructor
clibgen.PropertyDefinitionDefinition for MATLAB property corresponding to public property of C++ class
clibgen.MethodDefinitionDefinition for MATLAB function corresponding to C++ class method
clibgen.FunctionDefinitionDefinition for MATLAB function corresponding to C++ package function
clibgen.EnumDefinitionDefinition for MATLAB enumeration corresponding to C++ enumeration

Paquetes

Paquete clibgenSummary of packages and classes to support calling C++ library functionality from MATLAB

Temas

Introducción

Requisitos del sistema

Requisitos para llamar a funciones en bibliotecas de C++ compartidas externas.MATLAB

Importar funcionalidad de biblioteca de C++ enMATLAB

Requisitos para importar la funcionalidad de la biblioteca de C++.MATLAB

a asignación de tipos de datos de C++MATLAB

Correspondencia de tipos de datos con tipos de C++.MATLAB

Publicar interfaz de MATLAB en biblioteca de C++

Pasos para publicar una interfaz de biblioteca de C++MATLAB

Esquema para publicar una interfaz en una biblioteca de C++.

Definir y publicar interfaz en la biblioteca de C++ de solo encabezado

En este ejemplo se crea una interfaz a una biblioteca de C++ definida en un archivo de encabezado.MATLAB

Definir y publicar interfaz en la biblioteca compartida de C++

En este ejemplo se crea una interfaz a una biblioteca compartida de C++.MATLAB

Definir interfaz a la biblioteca de C++MATLAB

Cómo actualizar las definiciones en el archivo de definición.MATLAB.mlx

Llamar a funciones de C++ desde la interfaz publicada de MATLAB

Llamar a funciones en la biblioteca compartida de C++

Para llamar a una función en la biblioteca, utilice el paquete.MATLABclib

Mostrar ayuda para la interfaz a la biblioteca de C++MATLAB

Mostrar información del paquete y firmas de métodos para la interfaz de C++.MATLAB

Manejo de excepciones

Uso de excepciones de C++ en.MATLAB

Solución de problemas

Limitaciones a la compatibilidad con C/C++

Las características de la biblioteca C/C++ no son compatibles.MATLAB

Solución de problemas de interfaz de C++

Información para resolver problemas de interfaz de C++.

Errores al analizar archivos de encabezado en macOS

Solucionar los errores de análisis de archivo de encabezado en macOS.

Error de compilación debido a comprobaciones de tiempo de compilación

Cómo quitar miembros de C++ que contienen aserciones en tiempo de compilación.