【问题标题】:Swift 3 custom parameter typesSwift 3 自定义参数类型
【发布时间】:2017-08-14 20:07:36
【问题描述】:

很抱歉,如果以前有人问过这个问题,我找不到答案。我想为函数创建自定义参数类型。

Typedef?/定义类型

direction
{
    LeftToRight,
    RightToLeft
};

功能:

class func animateIn (dir:direction)
{
    if dir = LeftToRight
    {
        // animate left to right
    }
    else
    {
        // animate right to left
    }
}

呼叫:

animateIn (dir:LeftToRight)

【问题讨论】:

  • 你可以使用枚举。 enum Direction { case leftToRight, rightToLeft } let direction: Direction = .rightToLeft

标签: function swift3 parameters enums typedef


【解决方案1】:

enum 似乎是此用途的完美候选者。如果您打算在enum 中添加更多案例,那么在函数内部使用 switch 语句似乎也更可行。

enum Direction {
    case leftToRight, rightToLeft
}

class func animateIn(dir: Direction){
    switch dir{
    case .leftToRight:
        //do something
    case .rightToLeft:
        //do something
    }
}

【讨论】:

  • 工作就像一个魅力?谢谢先生! ?
【解决方案2】:
enum Direction
{
    case leftToRight, rightToLeft
}

功能:

class func animateIn(dir:Direction)
{
    switch dir {
    case .leftToRight:
        // animate left to right
    default:
        // animate right to left    
    }
}

呼叫:

animateIn(dir:.leftToRight)

【讨论】:

  • 最好明确命名案例.rightToLeft,而不是从default推断。这样更清楚。
猜你喜欢
  • 2017-01-27
  • 2017-02-27
  • 2017-08-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-03-04
  • 1970-01-01
相关资源
最近更新 更多