Artikel ini adalah artikel cermin dari terjemahan mesin, silakan klik di sini untuk melompat ke artikel aslinya.

Melihat: 2093|Jawab: 7

[Sumber] .NET 8 memanggil fungsi di pustaka C++ Dynamic Link

[Salin tautan]
Dipaparkan pada 2024-12-8 18:36:17 | | | |
Persyaratan: Beberapa pustaka algoritma dikembangkan di C++, dan tidak ada versi C#, bagaimana cara menggunakan C# untuk memanggil fungsi di C++?

Pertama, buat file header demo.h baru dan tentukan fungsi tambah penambahan, kodenya adalah sebagai berikut:

Buat file demo.cpp baru dengan kode berikut:

Unduh alat mingw64 di:Login hyperlink terlihat.

Ekstrak ke folder D:\mingw64, tambahkan sementara folder mingw64/bin ke variabel lingkungan di jendela cmd, dan gunakan perintah berikut:

Panggil perintah g++ untuk mengkompilasi kode sumber ke dalam pustaka tautan dinamis dengan perintah berikut:

Seperti yang ditunjukkan di bawah ini:



Dua file dihasilkan, demo.dll dan demo.lib.

Membuat proyek konsol .NET 8 baru

Setelah mereferensikan paket CppSharp, file proyek .csproj berbunyi:

Buat objek SampleLibrary baru untuk mengimplementasikan antarmuka ILibrary, kodenya adalah sebagai berikut:

oleh .h, . lib menghasilkan file .cs yang dapat dipanggil oleh C# dari fungsi di C++, kodenya adalah sebagai berikut:

Seperti yang ditunjukkan di bawah ini:



Coba panggil metode add di dalam demo.dll, seperti yang ditunjukkan pada gambar di bawah ini:



Kode Lengkap:


Unduhan kode sumber:

Wisatawan, jika Anda ingin melihat konten tersembunyi dari posting ini, silakanJawab


Referensi:
Login hyperlink terlihat.
Login hyperlink terlihat.





Mantan:Menggunakan mkcert untuk menghasilkan sertifikat nama domain yang ditandatangani sendiri
Depan:Unduh kompilasi kode sumber FastDeploy untuk Windows
Dipaparkan pada 2024-12-9 13:26:40 |
Belajar belajar
Dipaparkan pada 2024-12-9 16:32:11 |
Datang dan tonton
 Tuan tanah| Dipaparkan pada 2025-4-23 10:51:21 |
Unduhan Perpustakaan Standar C++:Login hyperlink terlihat.
 Tuan tanah| Dipaparkan pada 2025-4-23 16:49:21 |
 Tuan tanah| Dipaparkan pada 2025-6-17 17:19:08 |
Xiao Zhazha Dipaparkan pada 2025-4-23 16:49
https://github.com/dotnet/ClangSharp

Jalankan menggunakan kontainer Docker dengan perintah berikut:

Referensi:Login hyperlink terlihat.
 Tuan tanah| Dipaparkan pada 2025-6-18 09:43:12 |
Login hyperlink terlihat.
Login hyperlink terlihat.(Salin Program.cs ke proyek Anda sendiri dan jalankan setelah kompilasi, pembuatan pengujian sangat sederhana dan tidak lengkap)

 Tuan tanah| Dipaparkan pada 2025-6-18 14:05:22 |
SWIG (Simplified Wrapper and Interface Generator) adalah alat sumber terbuka yang digunakan untuk mengubah kode C/C++ menjadi kode antarmuka untuk beberapa bahasa pemrograman tingkat tinggi, bahasa pendukung seperti Python, Java, Ruby, C#, dll., dan sering digunakan untuk pengembangan lintas bahasa atau meningkatkan kinerja bahasa skrip.

Situs resmi:Login hyperlink terlihat.
Sumber:Login hyperlink terlihat.
Sanggahan:
Semua perangkat lunak, materi pemrograman, atau artikel yang diterbitkan oleh Code Farmer Network hanya untuk tujuan pembelajaran dan penelitian; Konten di atas tidak boleh digunakan untuk tujuan komersial atau ilegal, jika tidak, pengguna akan menanggung semua konsekuensi. Informasi di situs ini berasal dari Internet, dan sengketa hak cipta tidak ada hubungannya dengan situs ini. Anda harus sepenuhnya menghapus konten di atas dari komputer Anda dalam waktu 24 jam setelah pengunduhan. Jika Anda menyukai program ini, harap dukung perangkat lunak asli, pembelian pendaftaran, dan dapatkan layanan asli yang lebih baik. Jika ada pelanggaran, silakan hubungi kami melalui email.

Mail To:help@itsvse.com