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