C++ ライブラリとクラスを使用して C# 言語でプログラムを作成できますか? もしできるなら、どうやって?
質問する
73 次
2 に答える
2
P/Invoke
マネージ コードからアンマネージ コードを呼び出すために使用できます。puts
アンマネージ関数を呼び出す例を次に示します。
using System;
using System.Runtime.InteropServices;
class Program
{
[DllImport("msvcrt.dll")]
public static extern int puts([MarshalAs(UnmanagedType.LPStr)] string m);
[DllImport("msvcrt.dll")]
internal static extern int _flushall();
public static void Main()
{
puts("Hello World!");
_flushall();
}
}
ここでの考え方は、呼び出したいアンマネージド メソッドのシグネチャと一致するマネージド ラッパーを宣言することにあります。extern
メソッドがキーワードでマークされ、DllImport
実装されている場所を示す属性で装飾されていることに注目してください。
于 2013-03-31T18:54:50.850 に答える
1
間違いなくできます!
既存のライブラリがある場合 @Darin が参照しているメカニズムは自動的に実行できます。www.swig.orgで
于 2013-03-31T18:57:24.727 に答える