#ifdef __cplusplus extern "C" { #endif // C#から呼ばれる関数 void sampleMethod1() { NSLog(@"sampleMethod1 called."); } #ifdef __cplusplus } #endif using System.Runtime.InteropServices; public class Sample { // Sample.mm で定義しているCの関数を、以下のようにC#側で定義する [DllImport("__Internal")] private static extern void sampleMethod1(); } Objective-C側ではCの関数を定義したソースを作る。 Objective-Cのクラスを使いたい場合は、Cの関数を通して呼び出す形になる。 Objective-Cのソース