Por que o C ++ não torna a estrutura mais rígid

Por exemplo, eu tenho umclass,

class naive {
public:
    char a;
    long long b;
    char c;
    int d;
};

e de acordo com meu programa de teste,a parad são construídos um após o outro, como

a-------
bbbbbbbb
c---dddd

- significa não utilizado.

Por que o C ++ não o torna mais apertado, como

ac--dddd
bbbbbbbb

questionAnswers(1)

yourAnswerToTheQuestion