“GetOrCreate” - esse idioma tem um nome estabelecido?

Ok, considere este idioma comum que a maioria de nós já usou muitas vezes (eu assumo):

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;
    }
}

Tem algum tipo de nome estabelecido?

(Sim, está escrito em C #, mas pode ser "facilmente" transferido para C ++. Daí essa tag.)

questionAnswers(5)

yourAnswerToTheQuestion