Swift 3种自定义参数类型

Swift 3 custom parameter types

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

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 似乎是这种用途的完美候选者。如果你打算在enum中有更多的case,在函数内部一个switch语句似乎也更可行。

enum Direction {
    case leftToRight, rightToLeft
}

class func animateIn(dir: Direction){
    switch dir{
    case .leftToRight:
        //do something
    case .rightToLeft:
        //do something
    }
}
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)