我正在为 C++ 中的共享指针编写一个访问器方法,如下所示:
class Foo {
public:
return_type getBar() const {
return m_bar;
}
private:
boost::shared_ptr<Bar> m_bar;
}
因此,支持getBar()
返回类型的 const-ness 应该是boost::shared_ptr
防止修改Bar
它指向的。我的猜测是这shared_ptr<const Bar>
是我想要返回的类型,而const shared_ptr<Bar>
会阻止重新分配指针本身以指向不同的Bar
但允许修改Bar
它指向的...但是,我不确定。如果确定知道的人可以确认这一点,或者如果我弄错了,我将不胜感激。谢谢!