【发布时间】:2017-04-26 01:35:11
【问题描述】:
以下是根据调用的返回函数进行加减的基本函数。
func calculateFunc(_ inputValue:Int) -> (add:(Int)->(Int),sub:(Int)->(Int)){
func addFunction(_ newValue:Int)->(Int){
return inputValue + newValue
}
func subFunction(_ newValue:Int) -> Int {
return inputValue - newValue
}
return (addFunction,subFunction)
}
calculateFunc(4).add(2)
calculateFunc(4).sub(1)
我不知道以下是否可能。是否有任何递归函数的概念可以提供帮助?
calculateFunc(4).add(2).sub(1).add(9)
【问题讨论】:
-
具体目标是什么?只是为了实现这个语法
calculateFunc(4).add(2).sub(1).add(9),还是单独使用函数来实现? -
是实现语法。但是关闭而不是扩展。
-
我一直在玩它。我认为这本质上需要一个函数能够将自身作为函数返回。我认为这在静态类型系统中是不可能的,比如 Swift 的
-
我问了一个问题,谁的回答会引出这个问题的答案:stackoverflow.com/q/43624011/3141234