objective-c - Obj-C 内省(introspection) : How can a method reference its own selector?

标签 objective-c methods selector introspection

我想写一个宏,在任何方法中使用,引用方法的选择器。我不想传递方法的字面名称。例如:

#define RERUN [self performSelector:{something} withObject:nil afterDelay: 0.0]

上面的“{something}”将解析为使用宏的任何方法的选择器。

有什么办法可以做到这一点吗?

最佳答案

_cmd 表示当前方法的选择器 -- 它是一个隐藏参数(如 self)。

如果您从不需要参数,或者 nil 适合您的目的 - 您需要做的就是写:

#define RERUN [self performSelector:_cmd]

关于objective-c - Obj-C 内省(introspection) : How can a method reference its own selector?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8431498/

相关文章:

function - Lua中的方法声明

css奇偶嵌套元素

objective-c - NSTimer target 和 userInfo 参数问题

iphone - 如何在 Objective-C 中的 PDF 中添加欧元货币符号

objective-c - 滑动 UIView 以部分覆盖另一个 UIView

iphone - 使用 RESTKit 解析深层 XML 结构

ios - 如何区分自定义单元格中的 3 个对象

java - 如何调用 ArrayList 上的方法

swift - Swift 编程语言第 37 页 : func works in code but not as method of a struct

html - 如何仅设计 DIV 的第二个 UL