Krav: Vissa algoritmbibliotek utvecklas i C++, och det finns ingen C#-version, hur använder man C# för att anropa funktioner i C++?
Skapa först en ny demo.h-headerfil och definiera en funktion för att lägga till tillägg, koden är följande:
Skapa en ny demo.cpp-fil med följande kod:
Ladda ner verktyget mingw64 på:Inloggningen med hyperlänken är synlig.
Packa ut till D:\mingw64-mappen, lägg tillfälligt till mingw64/bin-mappen i miljövariabeln i cmd-fönstret och använd följande kommando:
Anropa kommandot g++ för att kompilera källkoden till ett dynamiskt länkbibliotek med följande kommando:
Som visas nedan:
Två filer genereras, demo.dll och demo.lib.
Skapa ett nytt .NET 8-konsolprojekt
Efter att ha refererat till CppSharp-paketet lyder .csproj-projektfilen:
Skapa ett nytt SampleLibrary-objekt för att implementera ILibrary-gränssnittet, koden är följande:
med .h, . lib-filen genererar en .cs-fil som kan anropas av C# från en funktion i C++, koden är som följer:
Som visas nedan:
Försök att anropa add-metoden inuti demo.dll, som visas på bilden nedan:
Fullständig kod:
Källkodsnedladdning:
Turister, om ni vill se det dolda innehållet i detta inlägg, snälla Svar
Hänvisning:
Inloggningen med hyperlänken är synlig.
Inloggningen med hyperlänken är synlig.
|