首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PromiseKit分割错误: 11

PromiseKit分割错误: 11
EN

Stack Overflow用户
提问于 2016-05-12 05:37:13
回答 1查看 289关注 0票数 0

我正试图得到一个与PromiseKit合作的基本承诺。但是,以下代码不会编译:

代码语言:javascript
复制
import Foundation
import PromiseKit

class MyClass {
    var myInt: Int?

    func sample() -> Promise<AnyObject> {
        return Promise { fulfill, reject in
            fulfill(1)
        }.then { data -> Int in
            return 3
        }
    }

    init() {
        sample().then { data -> Void in
            debugPrint("got data: \(data)")
        }
    }
}

这是我得到的错误:

代码语言:javascript
复制
command failed due to signal: segmentation fault: 11

这很令人沮丧。有人遇到过这种情况吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-08-04 18:54:20

这是因为Int不是AnyObject

代码语言:javascript
复制
func sample() -> Promise<AnyObject> {
    return Promise { fulfill, reject in
        fulfill(1)
    }.then { data -> Int in
        return 3
    }
}

这很可能是在Swift 3中修复的,但是这两种方法都会修复编译:

代码语言:javascript
复制
func sample() -> Promise<Int> {
    return Promise { fulfill, reject in
        fulfill(1)
    }.then { data -> Int in
        return 3
    }
}

或者:

代码语言:javascript
复制
func sample() -> Promise<AnyObject> {
    return Promise { fulfill, reject in
        fulfill(1)
    }.then { data -> NSNumber in
        return 3
    }
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37178115

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档