好的,考虑一下我们大多数人多次使用的这个常见习语(我假设):
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;
}
}
它有什么既定的名称吗?
(是的,它是用 C# 编写的,但它可以“轻松地”转移到 C++。因此有那个标签。)