Panggil kod C dalam C#
Panggilan merentas bahasa, terutamanya memanggil pustaka luaran daripada bahasa .NET (seperti C#) dan kod yang ditulis dalam bahasa pengaturcaraan yang berbeza, selalunya menjadi cabaran. Artikel ini meneroka cara memanggil kod C dalam C#, khususnya daripada fail perpustakaan kod (*.dll).
Penyelesaian: Pemasangan pembalut C/CLI
Penyelesaian yang berkesan ialah menggunakan C/CLI, sambungan bahasa yang menghubungkan C dan Rangka Kerja .NET. C/CLI membenarkan interaksi lancar antara kod C tidak terurus dan kod terurus seperti C#.
Buat himpunan pembalut C/CLI untuk mendedahkan kefungsian kod C yang diperlukan. Pembalut ini bertindak sebagai perantara, membenarkan kod C# memanggil pelaksanaan C seolah-olah ia adalah kod C#.
Contoh: RakNet Network Library
Untuk menggambarkan pendekatan ini, pertimbangkan untuk menggunakan perpustakaan rangkaian RakNet. Susun kod C/CLI berikut dengan menggunakan suis /clr:
<code class="language-c++">#include "NativeType.h" public ref class ManagedType { NativeType* NativePtr; public: ManagedType() : NativePtr(new NativeType()) {} ~ManagedType() { delete NativePtr; } void ManagedMethod() { NativePtr->NativeMethod(); } }; </code>
Anda boleh membuat perhimpunan terurus yang boleh dirujuk dalam kod C#. Ini membolehkan anda mengakses kefungsian C melalui kelas ManagedType:
<code class="language-c#">ManagedType mt = new ManagedType(); mt.ManagedMethod();</code>
Ringkasan
Dengan memanfaatkan C/CLI, anda boleh meluaskan fungsi bahasa .NET dengan berkesan dengan berinteraksi dengan kod C. Pendekatan ini memudahkan penyepaduan perpustakaan luaran dan membolehkan interaksi lancar antara persekitaran pengaturcaraan yang berbeza.
Atas ialah kandungan terperinci Bagaimanakah saya Boleh Panggil Kod C (DLL) daripada C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!