相关疑难解决方法(0)

编译器错误:使用Objective-C选择器的方法与先前使用相同Objective-C选择器的声明冲突

我开始学习Swift,并一直关注YouTube上非常好的斯坦福大学视频讲座.如果您感兴趣或有帮助,这里有一个链接(虽然不需要了解我的问题):

使用Swift开发iOS 8应用程序 - 2.更多Xcode和Swift,MVC

在讲课之后,我得到了一点(据我所知)我的代码与视频中的代码相同,但在我的系统上,我遇到了编译错误.经过大量的试验和错误后,我设法将我的代码减少到两个例子,其中一个产生错误,另一个或不产生错误,但我不知道究竟是什么原因导致错误或如何解决它.

创建错误的代码是:

import UIKit

class BugViewController: UIViewController
{
    func perform(operation: (Double) -> Double) {
    }

    func perform(operation: (Double, Double) -> Double) {
    }
}
Run Code Online (Sandbox Code Playgroud)

这会产生以下编译器错误:

方法'执行'与Objective-C选择器'执行:'与使用相同的Objective-C选择器的先前声明冲突

通过简单地删除UIViewController的子类,代码编译:

import UIKit

class BugViewController
{
    func perform(operation: (Double) -> Double) {
    }

    func perform(operation: (Double, Double) -> Double) {
    }
}
Run Code Online (Sandbox Code Playgroud)

其他一些可能相关或不相关的信息:

  • 我最近升级到约塞米蒂.
  • 当我安装Xcode时,我最终得到了Beta版本(版本6.3(6D543q)),因为(如果我没记错的话)这是我需要在我的OS X版本上运行的版本.

我一半希望这是编译器中的一个错误,否则这对我没有任何意义.非常感谢任何帮助!

swift

207
推荐指数
5
解决办法
6万
查看次数

标签 统计

swift ×1