のようなグローバル関数を定義する:ココア - そのポストと受け入れ答えを参照のNSLog
どのように私は、その例やその他の状況に、Objective-Cのコールがあり、グローバル関数を宣言してもよいです[MyClass myFunction]のような呼び出しをせずにNSLogのように直接呼び出すことができるかもしれませんか?
のようなグローバル関数を定義する:ココア - そのポストと受け入れ答えを参照のNSLog
どのように私は、その例やその他の状況に、Objective-Cのコールがあり、グローバル関数を宣言してもよいです[MyClass myFunction]のような呼び出しをせずにNSLogのように直接呼び出すことができるかもしれませんか?
標準のC構文を使用してください。実装を記述、宣言
extern return_type function_name(argument_type1 argument_name1,argument_type2 argument_name 2);
と.m
ファイル内の(又は.c
ファイルまたは任意)を書き込み、Objective-Cのが.h
ファイルでC.
の厳密なスーパーセットである、覚え
return_type function_name(argument_type1 argument_name1,argument_type2 argument_name 2){
....
}
ファイルが.m
のファイルの場合は、ブロック@implementation ... @end
の外側に配置する必要があります。 (まあ、あなたの中にあなたの機能を置くことができますが、私はそれが混乱していると思っています。)それはそれです!
コンパイル時にこのエラーが発生しました:アーキテクチャi386の定義されていないシンボル: "_MyNSLog"、これは私が使用しているオブジェクトの中で使用できますか?参照先: - MyClass.oの[MyClass doJob:] ld:アーキテクチャi386のシンボルが見つかりません collect2:ldが1を返しました。終了ステータス – Oliver
ターゲットに '.m'ファイルを含めるのを忘れた、または関数の実装( '.m'ファイル内)には、' .h'ファイルの宣言とは異なる名前があります。 – gcbrueckmann
ありがとうございます。私はこのようなものを適切に実装するのに苦労していました。それはすべて今行く。 – djneely
[私はiPhoneアプリのどのオブジェクトにも使えるように、どのようにobjective-cで関数を書くことができますか?](http://stackoverflow.com/questions/788706/how-cani- – miku