I have a POD struct from a library with many data fields:

```
struct A {
    int foo1;
    float foo2;
    ...
};

```

Now I would like to extend it to add some custom data and thought of this:

```
struct B : public A {
    int bar1;
    bool bar2;
};

```

What is a good way to create an instance of `B` from an instance of `A`? This does not work:

```
A a;
B b = a;

```