Objective-C选择器冲突的方法 - 最后的'with'

时间:2015-05-20 08:46:30

标签: objective-c xcode swift

升级到Xcode 6.3.2。

我有两个函数(我认为)不同的调用:

func someFunction(#str: String)
{

}

func someFunctionWith(#str: String)
{

}

someFunction(#符号之后,“With”这个词似乎被添加到#

我得到的错误是:

  

“方法”someFunctionWith(str :)'与Objective-C选择器'someFunctionWithStr:'与方法'someFunction(str :)'冲突,使用相同的Objective-C选择器“

编译器将此标记为选择器冲突,但 someFunctionWithStr: 不是 someFunction(str:) ,或者是它?

1 个答案:

答案 0 :(得分:3)

#str将在objc中翻译为withStr。您可以使用@objc(someOtherSelectorName:)注释为objc指定不同的选择器名称并避免冲突。