I found somewhere this piece of code:
boost::shared_ptr<const Foo> pFoo = boost::make_shared<const Foo>();
What's the aim of the const
keyword here?
Its very simple, it really is just a pointer pointing to a const
Foo. The code, currently, which is:
boost::shared_ptr<const Foo> pFoo = boost::make_shared<const Foo>();
Is the basic equivalent of
const Foo * pFoo
The meaning of const
here is regular as with const
pointers
The advantage of this is that the pointer is read-only, because of const
ness