可以查看 StackFlow 中的原问题 ​​https://stackoverflow.com/questions/46072829/whats-the-diffrents-between-selector-and-selector-ios-swift​

今天遇到调用某个函数的问题,在选择 ​​Selector()​​​ 与 ​​#selector​​ 的时候迷糊了,因为根本不清楚这两个到底是什么。

ios Selector() 与 #selector() 的不同之处,区别_函数指针

ios Selector() 与 #selector() 的不同之处,区别_函数指针_02

查了下才知道,这两个是同一个东西,只不过

Selector()

接收的是函数的字符串,并不能检查语法的错误,所以很容易出错

#selector()

与上面的作用是一样的,在 Swfit2.2 之后才出现的。
这个接收的是真函数指针,所以在编译的时候能检查出语法错误