0

Objective C で C++ 関数を呼び出す方法に少し混乱しています。

関数を次のように宣言しました。

void InitializeSearchRegistration();

interface と end の間のヘッダー ファイル。次に、mm ファイルで次のように定義しました。

void InitializeServiceRegistration()
{
}

私が苦労しているのは、それをパブリックとして定義して、他のクラスがそれを見ることができるようにする方法です。公開しようとしましたが、エラーが発生しました。通常、C++ メソッドはクラス ブロックで宣言する必要があります。

どんなアドバイスも素晴らしいでしょう。

4

2 に答える 2

1

Objective-C++ を使用して C++ メンバー関数を Objective-C クラスに追加することはできません。クラスを再設計して、完全に C++ インターフェイス (この場合は C++classまたはである必要がありますstruct) または完全に Objective-C インターフェイス (この場合、C++ メンバー関数ではなく、ObjC クラスとインスタンス メソッドを定義する必要があります) を持つようにすることを検討する必要があります。

于 2013-05-20T12:15:31.890 に答える
0

これには 2 つの方法があります。1 つ目は、C++ と Objective C を組み合わせて、Objective C++ と呼ばれる別の言語にすることです。もう 1 つは、単純な C 関数を介して通信することです。

于 2013-05-20T12:14:38.390 に答える