Is this too obscure?
public class MyObject
{
private MyExpensiveObject _myExpensiveObject;
public MyExpensiveObject ExpensiveObject
{
get { return _myExpensiveObject ??
(_myExpensiveObject = new MyExpensiveObject()); }
}
}
Comments (2)
No, seems perfectly clear to me.
I use that all the time, even for non-expensive objects