derived
наследует как b1
, так и b2
, поэтому его размер является, по крайней мере, суммой их размеров, каждый из которых имеет размер не менее десяти int
с, 40 байтов с 32-битным int
s. Что дает нам как минимум 80. Видимость члена здесь не имеет значения, она не влияет на размер шрифта. По-видимому, нельзя оптимизировать массивы для derived
, так как публично base
(в два раза!) Должно содержать ровно столько же подобъектов типа base
, иначе как бы вы повысили его до base
?