gpt4 book ai didi

ios - 数组存储函数

转载 作者:搜寻专家 更新时间:2023-11-01 06:12:18 27 4
gpt4 key购买 nike

我有一个名为 update 的函数,如下所示:

func update(animated: Bool, completion: @escaping (Bool) -> ()) {

}

现在我想在一个数组中对这个函数的多次调用进行排队。我该怎么做?

我需要一个类型为:

var queue = [???]()

并附加 queue.append(???) 之类的函数,但我无法弄明白。

最佳答案

为了简化您的实现方式,只需复制您的函数签名:

(animated: Bool, completion: @escaping (Bool) -> ())

并用它来声明一个类型别名:

typealias Update = (animated: Bool, completion: (Bool) -> ())

您会看到如下语法错误:

@escaping attribute may only be used in function parameter position

建议删除 @escaping,执行此操作:

typealias Update = (animated: Bool, completion: (Bool) -> ())

此时,您将能够通过使用 Update 类型别名来识别适当的类型。

因此,您可以将queue 数组声明为:

var queue = [Update]()

请注意,在声明类型别名时,您可以避免将参数命名为:

// this is sufficient
typealias Update = (Bool, (Bool) -> ())

此外:

要了解类型别名是什么,您可以查看:When to use typealias? (以及其回答中提到的 story)

关于ios - 数组存储函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53153756/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com