I have a problem with inheritance.
I have the class A with functions x and y
Class B is a subclass of A and should override y. y should call y in A and add extra functionality.
Class C is a subclass of B and should override y. y should call y in B and add extra functionality.
When I create an instance of C x should call the version of y defined in C.
If I get this right I need to declare y in B as "virtual" to be able to override it in C. I also need to declare it "override" to be able to override y in A. But "virtual" and "override" can not be combined!
I can't use "new" either because that would make x call the wrong version of y.
What have I missunderstood here? There must be a way to do this.