3

セルフポインターと少し混乱しています。目的の C で self を使用したい場合は、それをパラメーターとして渡す必要があることを理解しています。

someFunction(id self)
{

}

ただし、少し混乱しているのは、自己のメンバー変数を使用したい場合、次のエラーが発生することです

タイプ「__strong id」のオブジェクトにプロパティ「browser」が見つかりません。

ヘッダー ファイルで browser を次のように定義しました。

@property webBrowser* browser;

次に、c++ 関数で webBrowser クラスの関数を呼び出そうとしています。

[self.browser StartSearch:self];

上記の行でエラーが発生します。代わりに自分自身のメンバー変数をパラメーターとして渡すと、関数は間違いなく正しく呼び出されます。ただし、これはかなりハックに感じます。

なぜそれが機能しないのか、代替手段が何であるかについての説明は素晴らしいでしょう.

4

2 に答える 2