One useful case is when you do not have access to the constructor of this object, but you do not want to work with indirection through a pointer. For example, if a class Adoes not have an open constructor, and your class wants to accept an instance Ain its constructor, you want to save A&. It also guarantees link initialization.
source
share