Is there a way to force a derived class to use the constructor of the abstract base class? It must not be a real constructor, I have an open mind about creative solutions.>
Use initializer list of the derived class' constructor.
class Base { Base(int Member, string Text) { //... } }; class Derived : public Base { Derived(int Member, string Text) : Base(Member, Text) { // ^^^^^^^^^^^^^^^^^^ // ... } };