Denne artikkelen er en speilartikkel om maskinoversettelse, vennligst klikk her for å hoppe til originalartikkelen.

Utsikt: 2220|Svare: 7

[Kilde] .NET 8 kaller funksjoner i C++ Dynamic Link-biblioteket

[Kopier lenke]
Publisert på 08.12.2024 18:36:17 | | | |
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å snillSvare


Referanse:
Innloggingen med hyperkoblingen er synlig.
Innloggingen med hyperkoblingen er synlig.





Foregående:Bruk mkcert for å generere et selvsignert domenenavnsertifikat
Neste:Last ned FastDeploy-kildekodekompilasjonen for Windows
Publisert på 09.12.2024 13:26:40 |
Lær å lære
Publisert på 09.12.2024 16:32:11 |
Kom og se
 Vert| Publisert på 23.04.2025 10:51:21 |
C++ Standard bibliotek nedlasting:Innloggingen med hyperkoblingen er synlig.
 Vert| Publisert på 23.04.2025 16:49:21 |
 Vert| Publisert på 17.06.2025 17:19:08 |
Xiao Zhazha publisert 23.04.2025 kl. 16:49
https://github.com/dotnet/ClangSharp

Kjør ved hjelp av en Docker-container med følgende kommando:

Referanse:Innloggingen med hyperkoblingen er synlig.
 Vert| Publisert på 18.06.2025 09:43:12 |
Innloggingen med hyperkoblingen er synlig.
Innloggingen med hyperkoblingen er synlig.(Kopier Program.cs til ditt eget prosjekt og kjør det etter kompilering, testgenereringen er veldig enkel og ufullstendig)

 Vert| Publisert på 18.06.2025 14:05:22 |
SWIG (Simplified Wrapper and Interface Generator) er et åpen kildekode-verktøy som brukes til å konvertere C/C++-kode til grensesnittkode for flere høynivå programmeringsspråk, og støtter språk som Python, Java, Ruby, C# osv., og brukes ofte til utvikling på tvers av språk eller til å forbedre ytelsen til skriptspråk.

Offisiell nettside:Innloggingen med hyperkoblingen er synlig.
Kilde:Innloggingen med hyperkoblingen er synlig.
Ansvarsfraskrivelse:
All programvare, programmeringsmateriell eller artikler publisert av Code Farmer Network er kun for lærings- og forskningsformål; Innholdet ovenfor skal ikke brukes til kommersielle eller ulovlige formål, ellers skal brukerne bære alle konsekvenser. Informasjonen på dette nettstedet kommer fra Internett, og opphavsrettstvister har ingenting med dette nettstedet å gjøre. Du må fullstendig slette innholdet ovenfor fra datamaskinen din innen 24 timer etter nedlasting. Hvis du liker programmet, vennligst støtt ekte programvare, kjøp registrering, og få bedre ekte tjenester. Hvis det foreligger noen krenkelse, vennligst kontakt oss på e-post.

Mail To:help@itsvse.com