import scala.reflect.ClassTag
class IntStorage {
var variable: Int = 5
}
class testing[T : ClassTag] {
var example = Array.ofDim[T](10, 10)
def testFunc(): Int = example(0)(0).variable
}
Error: value variable is not a member of T
I do not understand why I get this error, even though I use a Classtag.
>Solution :
The ClassTag is fine. But you declared testing to work for any class, not just IntStorage. What if I call new testing[String]()? String is a perfectly valid class with a class tag, but it doesn’t have a variable field. I could call it with any class.
Is it possible you meant
class testing[T <: IntStorage : ClassTag] { ... }