Hi guys,
below a small piece of code, which does not compile because "b"
of type B can not be passed as ref parameter to incr(ref A a).
If I remove the ref, it works as expected, that is to say I can
give a derived class as parameter. I have an idea why it does not
work, but I think a c++ reference would work, ie incr(A& console)
would accept a B as parameter. What the logic here?
Thanks
```
void main()
{
import std.stdio: write, writeln, writef, writefln;
class A
{
int i = 2;
}
class B : A
{
int j= 3;
}
void incr(ref A a)
{
writeln(a.i);
}
B b = new B();
incr(b);
}
```