"GetOrCreate": ¿ese idioma tiene un nombre establecido?

Ok, considera este lenguaje común que la mayoría de nosotros hemos usado muchas veces (supongo):

class FooBarDictionary
{
    private Dictionary<String, FooBar> fooBars;

    ...

    FooBar GetOrCreate(String key)
    {
        FooBar fooBar;

        if (!fooBars.TryGetValue(key, out fooBar))
        {
            fooBar = new FooBar();
            fooBars.Add(key, fooBar);
        }

        return fooBar;
    }
}

¿Tiene algún tipo de nombre establecido?

(Sí, está escrito en C #, pero se puede transferir "fácilmente" a C ++. De ahí esa etiqueta).

Respuestas a la pregunta(5)

Su respuesta a la pregunta