NSLog をベースとして使用し、 PRETTY_FUNCとLINEを追加する方法について、多数のマクロのバリエーションを見つけましたが、それらのマクロのすべてのバリエーションは単に結果をコンソールに出力するだけです。
可変数の引数を持つフォーマットを取り、メソッドの名前とそれが呼び出された行番号を追加してから NSString を返すことができるマクロが欲しいのですが、これまでのところ、コンパイラは私が呼び出した場所に常に文句を言います. 私の最新バージョンは次のとおりです。
#define FileLog(format, ...) {\
return [NSString stringWithFormat:@"\n %s [Line %d] \n %@",
__PRETTY_FUNCTION__,
__LINE__,
[NSString stringWithFormat:(format), ##__VA_ARGS__]];\
}
コードから呼び出すたびに、コンパイラは次のいずれかのエラーを生成します。
error: expected expression before '{' token
ログクラスを作成したり、そのためのフレームワークを使用したりしたくありません。マクロでそれを行う方法が必要ですか?誰?
前もって感謝します!