In the case of multiple inheritance
I wish func to be able to change data members derived via class A but not those derived via class B.
I would like to say
mutable public A,
but this is illegal.
What is the best solution which achieves what I want?