2
这两个函数相互冲突。 是否有解决此问题的方法?Kotlin中的两个函数具有不同数量的类型参数
inline fun <reified T: Any> foo() = ...
inline fun <reified T: Any, reified I: Any> foo() = ...
谢谢!
编辑:
我发现,方便(至少对我来说)解决方案针对此问题:
inline fun <reified T: Any> foo() = foo<T, MyDefaultType>()
inline fun <reified T: Any, reified I: Any> foo(type1: KClass<T> = T::class, type2: KClass<I> = I::class) = ...
如果选择只添加一个参数,它甚至可以简洁。
稍后,您可以使用它像这样:
val x = foo<A, B>()
val y = foo<C>()
这就是我所需要的。
感谢您的回答!我已经尝试过没有成功。 – abond