Requisitos: Algunas librerías de algoritmos se desarrollan en C++ y no existe una versión en C#, ¿cómo usar C# para llamar funciones en C++?
Primero, crea un nuevo archivo de encabezado demo.h y define una función de suma de súmenes, cuyo código es el siguiente:
Crea un nuevo archivo demo.cpp con el siguiente código:
Descarga la herramienta mingw64 en:El inicio de sesión del hipervínculo es visible.
Extrae en la carpeta D:\mingw64, añade temporalmente la carpeta mingw64/bin a la variable de entorno en la ventana cmd y usa el siguiente comando:
Llama al comando g++ para compilar el código fuente en una biblioteca de enlace dinámico con el siguiente comando:
Como se muestra a continuación:
Se generan dos archivos, demo.dll y demo.lib.
Crear un nuevo proyecto de consola en .NET 8
Tras referenciar el paquete CppSharp, el archivo del proyecto .csproj dice:
Crea un nuevo objeto SampleLibrary para implementar la interfaz ILibrary, el código es el siguiente:
por .h, . lib genera un archivo .cs que puede ser llamado por C# a partir de una función en C++, el código es el siguiente:
Como se muestra a continuación:
Prueba a llamar al método de adición dentro de demo.dll, como se muestra en la imagen de abajo:
Código completo:
Descarga del código fuente:
Turistas, si queréis ver el contenido oculto de esta publicación, por favor Respuesta
Referencia:
El inicio de sesión del hipervínculo es visible.
El inicio de sesión del hipervínculo es visible.
|