Krav: Noen algoritmebiblioteker er utviklet i C++, og det finnes ingen C#-versjon, hvordan bruker man C# til å kalle funksjoner i C++?
Først oppretter du en ny demo.h-headerfil og definerer en addisjonsfunksjon, koden er som følger:
Opprett en ny demo.cpp-fil med følgende kode:
Last ned verktøyet mingw64 på:Innloggingen med hyperkoblingen er synlig.
Pakk ut til D:\mingw64-mappen, legg midlertidig til mingw64/bin-mappen i miljøvariabelen i cmd-vinduet, og bruk følgende kommando:
Kall g++-kommandoen for å kompilere kildekoden til et dynamisk lenkebibliotek med følgende kommando:
Som vist nedenfor:
To filer genereres, demo.dll og demo.lib.
Lag et nytt .NET 8-konsollprosjekt
Etter å ha referert til CppSharp-pakken, lyder .csproj-prosjektfilen:
Opprett et nytt SampleLibrary-objekt for å implementere ILibrary-grensesnittet, koden er som følger:
ved .h, . lib-filen genererer en .cs-fil som kan kalles av C# fra en funksjon i C++, koden er som følger:
Som vist nedenfor:
Prøv å kalle add-metoden inne i demo.dll, som vist på bildet under:
Full kode:
Nedlasting av kildekode:
Turister, hvis dere vil se det skjulte innholdet i dette innlegget, vær så snill Svare
Referanse:
Innloggingen med hyperkoblingen er synlig.
Innloggingen med hyperkoblingen er synlig.
|