ポインタをパラメータに持つC++の関数を、C#から利用する方法

C++の関数がポインタを使用する場合には、C#のコード内ではそれをアンセーフとして扱う必要があります。またポインタはCLSに準拠していないため、CLSCompliant属性でそれを明示する必要があります。

サンプルコード

[CLSCompliant( false )]
[DllImport( "sample.dll", EntryPoint = "MethodName" )]
public unsafe static void MethodName( int* p );
Microsoft Learnから検索