Originally Posted by xpi0t0s
I guess sizeof int is 2 on your system.
In derived3 you have derived3::l, derived1::j, derived2::k, derived1::base::i and derived2::base::i, which is five int's. Hence 10.
When you derive a class you get the whole lot, private or otherwise.
I think you r right , is thr any case of default constructor? because , that program act like that , it will call default constructor , and default constructor , will return sizeof(this) for individual class.