假设您想在Scala中使用variadic templates(为通用类定义n个类型参数的功能)之类的东西。
例如,您不想定义Tuple2[+T1, +T2]
和Tuple3[+T1, +T2, +T3]
,而是 Tuple[T*]
。
除了HLists之外,还有其他选项可以支持元组,乘积和函数吗?
最佳答案
目前,Scala中没有任何语法结构可以满足您的建议。这也是为什么存在22个Tuple类(Tuple2,Tuple3,...,Tuple22)以及不同的Function类(Function0,...)的原因。