Swift 中的可变泛型与值和类型参数包

问题描述 投票:0回答:1

有两种进化建议: 可变泛型值和类型参数包
那么区别是什么呢?他们在概念上感觉非常相似。
第二个语法超重,已经在 Swift 5.9 中实现了
第一个...我不确定。

Type Parameter Packs
只是初始
Variadic Generic
提案的最终版本吗?找不到任何明确的信息。

swift generics variadic parameter-pack
1个回答
0
投票

“Variadic Generics”提出了比 Swift 5.9 中实现的更多功能,例如迭代参数包。

“Variadic Generics”Swift 论坛线程链接到 pull request #1510,该请求已关闭。据说,#1510 已被 #1839 取代。第1839章也关了,评论完:

我认为本文档的本质将在参数包提案下进行审查,其余部分将作为基于参数包构建的单独功能(如果它们被接受)。

而这里提到的“参数包提案”就是5.9中实现的提案。 “其余的”被分成几个不同的提案 - 其中一些在 5.9 中实现(可变泛型类型扩展到元组),其中一些则没有(包迭代)。

简而言之,可变参数泛型首先出现,然后分成多个提案,其中之一是参数包。

© www.soinside.com 2019 - 2024. All rights reserved.