我有一个内部使用Boost版本的库,shared_ptr只公开那些.对于我的应用程序,我想std::shared_ptr尽可能使用.遗憾的是,两种类型之间没有直接转换,因为引用计数的东西是依赖于实现的.
有没有办法让a boost::shared_ptr和a std::shared_ptr共享同一个ref-count-object?或者至少从Boost版本中窃取引用计数,只让stdlib版本处理它?
tr1::shared_ptr和之间有什么区别boost::shared_ptr吗?如果是这样,什么?
我有一个用于boost::signals2组件之间通信的应用程序.我正在尝试使用它的自动连接管理功能slot_type(...).track(weak_ptr).
问题:
在我的整个程序中,std::shared_ptr使用..track期待一个boost::weak_ptr,我提供一个std::weak_ptr.
这是我得到的确切错误:
cannot convert argument 1 from 'std::weak_ptr<_Ty>' to 'const boost::weak_ptr<void> &'
Run Code Online (Sandbox Code Playgroud)
这有解决方法吗?或者我误解了这个问题?