首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >“(Int) -> Int”不能转换为“Int”

“(Int) -> Int”不能转换为“Int”
EN

Stack Overflow用户
提问于 2015-02-27 08:28:30
回答 2查看 1.5K关注 0票数 0

您好,我把Swift编程语言书中的一些代码放到了一个游乐场上,我得到了以下错误消息。('(Int) -> Int' is not convertible to 'Int')这是怎么回事?感谢你的帮助

代码语言:javascript
复制
func stepForward (input: Int) -> Int {
     return input + 1
}
func stepBackward (input: Int) -> Int {
     return input - 1
}
func chooseStepFunction (backwards: Bool) -> Int {
     return backwards ? stepBackward : stepForward
}
EN

回答 2

Stack Overflow用户

发布于 2015-02-27 08:34:18

chooseStepFunction期望返回一个Int时,您返回的是一个函数。您需要将返回类型从Int更改为(Int) -> Int

代码语言:javascript
复制
func chooseStepFunction (backwards: Bool) -> (Int) -> Int {
     return backwards ? stepBackward : stepForward
}
票数 2
EN

Stack Overflow用户

发布于 2015-02-27 08:34:28

当您尝试返回一个函数时,它应该是

代码语言:javascript
复制
func chooseStepFunction(backwards: Bool) -> (Int) -> Int {
    return backwards ? stepBackward : stepForward
}

chooseStepFunction返回一个函数,该函数接受一个整数,并返回一个整数。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28755456

复制
相关文章

相似问题

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