«GetOrCreate» - у этой идиомы есть устоявшееся имя?
Хорошо, рассмотрим эту распространенную идиому, которую большинство из нас использовали много раз (я полагаю):
class FooBarDictionary
{
private Dictionary fooBars;
...
FooBar GetOrCreate(String key)
{
FooBar fooBar;
if (!fooBars.TryGetValue(key, out fooBar))
{
fooBar = new FooBar();
fooBars.Add(key, fooBar);
}
return fooBar;
}
}
У него есть какое-нибудь установленное имя?
(Да, это'написано на C #, но это может бытьбез труда" переведен на C ++. Отсюда и этот тег.)