返回一个元组数组

时间:2014-07-06 16:33:41

标签: xcode function swift lint

    func timesForDepartureStation(departureStation: Station, #arrivalStation: Station) -> Array<(departureTime: NSDate, arrivalTime: NSDate)>{

出于某种原因,Xcode LINT工具完全阻止我编译这行代码。它注意到#是无关的(即使它不是,我只是想让它也是一个外部参数),当从外部类调用时......它甚至不能识别第二个参数。我不知道为什么,但我已经多次重启Xcode,我很想重新安装。有没有人发现类似的问题?

2 个答案:

答案 0 :(得分:0)

默认情况下,除第一个参数之外的每个参数都使用参数名称作为外部名称,不需要强制使用第二个参数。所以这个功能签名应该给你你想要的东西:

func timesForDepartureStation(departureStation: Station, arrivalStation: Station) -> Array<(departureTime: NSDate, arrivalTime: NSDate)>

然后你可以像这样调用这个函数:

timesForDepartureStation(departStation, arrivalStation: arrStation)

如果你想强制第一个参数使用外部名称,你可以使用离线站前的#,但根据函数的名称,这不是必需的。

如果您希望不为函数使用命名参数,您必须在定义中的参数前放置_,如下所示:

func timesForDepartureStation(departureStation: Station, _ arrivalStation: Station) -> Array<(departureTime: NSDate, arrivalTime: NSDate)>

然后可以这样调用:

timesForDepartureStation(departStation, arrStation)

答案 1 :(得分:0)

重新启动计算机,Xcode修复了所有问题。愚蠢的贝塔斯