変数の検査を NSLog よりも簡単にする独自のメソッドを作成したい - NSLog のラッパーにしたいので、メソッドに渡されるオブジェクトの適切な書式指定子をどうにかして認識する必要があります。
次のことを実行できるformat_specifier_forのようなメソッドがあると便利です。
format_specifier_for(1) => %d
format_specifier_for(@1) => %@
and so on...
アップデート:
受け入れられた回答(元の質問に回答します)に加えて、問題に対する2つの可能なアプローチがあります。
- @Guillaume の回答から: http://vgable.com/blog/2010/08/19/the-most-useful-objective-c-code-ive-ever-written/の LOG_EXPR メソッドを使用します。
- ここで説明されているように、メソッドを定義するときにオーバーロード可能な属性を使用します: How to check if a variable is an object?
理想的なソリューションは、これらのオプションの両方から借りることができると思います。