0
私はメモリreinterpreterするには、いくつかのオブジェクトを持っている:一般的なインタフェースの
interface reinterpreter<T> {
operator fun get(index: Int): T
operator fun set(index: Int, value: T): Any
}
object vec1bData : reinterpreter<Vec1b> {
override operator fun get(index: Int) = Vec1b(data, index * Vec1b.size)
override fun set(index: Int, value: Vec1b) = value.to(data, index * Vec1b.size)
}
を私は
inline fun <reified T> data():reinterpreter<T> = when (T::class.java) {
Vec1b::class.java -> vec1bData
}
を入力するとき、私は得る:
が
を見つけましたreinterpeter<T>
を必要ですが、vec1bData
どうすれば解決できますか? vec1bData
のT
は、一般的な、しかしVec1b
に設定されていないため
私はどのように解決しなければなりません/どのような変更? – elect
キャスティングはここで助けになります、Kotlinでは 'as'キーワードで終わっています。 – user3151902