Wie kann ein standardmäßig initialisiertes Objekt elegant zurückgegeben werden?

Ich habe eine Klasse wie folgt:

class VeryVeryVeryLongTypeName
{
    bool is_ok;

    VeryVeryVeryLongTypeName() : is_ok(false) {}
};

VeryVeryVeryLongTypeName f()
{
    VeryVeryVeryLongTypeName v;

    ... // Doing something

    if (condition_1 is true)
    {
        return v;
    }
    else
    {
        return VeryVeryVeryLongTypeName();
    }

    ... // Doing something

    if (condition_2 is true)
    {
        return v;
    }
    else
    {
        return VeryVeryVeryLongTypeName();
    }    
}

Ich denke die Aussagereturn VeryVeryVeryLongTypeName(); ist sehr langweilig und hässlich, meine Frage ist also:

Wie kann ein standardmäßig initialisiertes Objekt elegant zurückgegeben werden?

oder mit anderen Worten:

Ist es eine gute Idee, dem C ++ - Standard ein Feature hinzuzufügen, um sicherzustellen, dass die folgende Aussage zulässig ist?

return default; // instead of return VeryVeryVeryLongTypeName();

Antworten auf die Frage(5)

Ihre Antwort auf die Frage