我想要为我的项目中的所有类添加当前类名和方法名的追踪信息。
有没有一种类似于以下代码的方法可以在运行时获取当前方法名称:
NSLog(@"classname: %@", [self className]);
self是一种派生自NSObject类的类吗?
我想要为我的项目中的所有类添加当前类名和方法名的追踪信息。
有没有一种类似于以下代码的方法可以在运行时获取当前方法名称:
NSLog(@"classname: %@", [self className]);
self是一种派生自NSObject类的类吗?
NSLog(@"method name: %@", NSStringFromSelector(_cmd));
_cmd
是一个类似于self
的隐藏参数,所有Objective-C方法都会收到它。它的值是用来调用该方法的选择器。
编辑: 我认为这个方法更通用...看看吧..
NSLog(@"%s", __PRETTY_FUNCTION__);
这也可以工作:
NSLog(@"%@", [NSString stringWithUTF8String:__func__])