Убедитесь, что расположение памяти членов данных перед базовым классом - PullRequest
1 голос
/ 10 июля 2019

Я пытаюсь инициализировать класс B, который является производным от базового класса A. Однако я хочу, чтобы расположение в памяти членов B предшествовало расположению членов A. Код, который у меня пока есть:

class A {
public:
    A();
    int a;
}
class B : public A {
public:
    B();
    int b;
}

Однако, это приводит к тому, что местоположение b в памяти появляется после a, и мне нужно, чтобы b предшествовало a в памяти. Есть ли способ сделать это, не копируя все A в B? (Мне нужно B, чтобы получить от A)

...