c++ Multiple Inheritance - Compiler modifying my pointers
- by Bob
If I run the following code, I get different addresses printed. Why?
class Base1 {
int x;
};
class Base2 {
int y;
};
class Derived : public Base1, public Base2 {
};
union U {
Base2* b;
Derived* d;
U(Base2* b2) : b(b) {}
};
int main()
{
Derived* d = new Derived;
cout << d << "\n";
cout <<…