I want to create a class constructor which will call it's superclass constructor only on certain condition. My current implementation of this is shown below.

```
class MyClass : public OtherClass
{
public:
    template<typename... Args>
    MyClass(bool condition, Args&&... args)
    {
        if(condition)
        {
            *(OtherClass*)this = OtherClass(args...);
        }
        else
        {
            //  Unrelated stuff
        }
    }
};

```

I can't use `MyClass(...) : OtherClass(...) {}` syntax here because superclass's constructor should not be called every time.

Is there any way to call superclass constructor directly instead of calling move constructor (as shown in my example).