I have a factory method Create which returns instances of std::unique_ptr which own either a DerivedA or DerivedB:
Create
std::unique_ptr
DerivedA
DerivedB