In cases where constructor dependency injection is required, what are the considerations for using injection by reference vs. using boost::shared_ptr?
Is there another common way of doing it? How does it compare to the two methods above?