【问题标题】:what should I do if I want to refer a full name of a function in swift?如果我想在 swift 中引用函数的全名该怎么办?
【发布时间】:2017-05-10 03:39:14
【问题描述】:

既然 sqrt 是我应该引用的名称,还有其他方法可以引用函数吗(例如全名 :sqrt(double))?

我知道sqrt是要引用的合法名称,但是写的比较短,可以写一个sqrt函数的全称吗?

import Foundation

class CalculatorBrain{
private var accumulator: Double = 0.0
func setOperand(operand: Double){
    accumulator = operand
}

var operations: Dictionary<String, Operation> = [
    "√" : Operation.UnaryOperation(sqrt), // (sqrt(double))
]

enum  Operation {
    case UnaryOperation((Double)->Double)
}

func performOperation(symbol: String){
    if let abc = operations[symbol]{
        switch abc {
        case .Constant(let aa):
            accumulator = aa
        case .UnaryOperation:break
        case .BinaryOperation: break
        case .Equals: break
        }
    }
}

var result:Double{
    get{
        return accumulator
    }
}
}

【问题讨论】:

  • 这与枚举、关联值或任何其他无关。 sqrt 只是引用一个函数而不调用它。
  • 是的,如果我想引用全名怎么办?
  • 这是什么意思?

标签: swift enums


【解决方案1】:

因为sqrt 是函数的名称。你没有调用它,你也不想这样做;你是它。最简单的名字就是你如何做到这一点。

【讨论】:

  • 可能想看我的书:apeth.com/swiftBook/…
  • 那如果要加全名怎么办?
  • @WuchangLi “全名”是什么意思?已经有人问过了,你还没说清楚。
猜你喜欢
  • 2020-04-10
  • 1970-01-01
  • 1970-01-01
  • 2016-12-23
  • 2022-07-25
  • 1970-01-01
  • 2020-05-26
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多