boost shared_ptr:operator=和reset之间的区别?
下面两段代码有什么区别吗?他们中的任何一个比另一个更可取吗? operator= boost::shared_ptr foo; // foo.ptr should be NULL foo = boost::shared_…
从 std::set> 中删除通过shared_ptr;
我有一个函数,本质上可以归结为这个(我正在努力解决的部分,忽略实际发生的事情) class CellSorter { public: bool operator()( std::shared_ptr a…
将shared_ptr与自定义相等运算符和STL一起使用时出现问题
将共享指针与自定义相等运算符和 std::list 一起使用时似乎存在问题。 我整理了以下示例代码来演示该问题。 在尝试编译之前: 我使用 gcc version 4.5…
重构 c++基于模板类型的模板类
给定 Foo 类, template class Foo { public: ...other methods.. void bar() { ... m_impl.doSomething(); ... } void fun() { ... m_impl.doSomethi…
关于shared_from_this的问题
我有一个需要 shared_ptr 的函数。 在 MyClass 的某些成员函数 memfun 中,我需要将 this 传递给该函数。但如果我写, void MyClass:memfun() { func(…
混合 C 和 C++、原始指针和(增强)共享指针
我正在使用 C++ 处理一些遗留的 C 代码。 我有一个数据结构(在初始化期间),制作指向传递给其初始化指针的 ptr 的结构的副本。 这是我正在尝试做的…
std::shared_ptr 与 std 容器
我有一个 shared_ptr 容器,我将这些对象交给 Windows API,稍后我会使用原始 ptr 获得回调。我想在事后找到正确的shared_ptr。这可以用shared_ptr干…
访问包含 boost::shared_ptr 的 std::vector -> at() 返回共享指针的副本吗?
我是 boost::shared_ptr 的新手,第一次使用它。我有一个包含 boost::shared_ptr 的 std::vector ,我用自定义类创建的对象“填充”了它。 在代码中:…
共享指针前向声明
我有一个接口Interface。 我还有一个 .h 文件 InterfaceFwd.h ,看起来就像 #ifndef Blah #define Blah #include class Interface; typedef boost::sh…
谁拥有 MySQL Connector C++ 返回的内存?
我在使用 MySQL Connector C++ 1.05 时遇到内存泄漏/删除错误。 连接器返回一个指向执行查询结果集的指针。 我将指针分配给 boost::shared_ptr。通话…
抛出一个 boost::shared_ptr<自定义异常>
是否存在以下任何陷阱; if (someCondition) throw boost::shared_ptr( new SomeException( "foo!" ) ); ... catch( const boost::shared_ptr& expRef…
boost::shared_ptr 和继承
我面临的情况是,我有一个基类的 boost::shared_ptr 的 std::vector 。在我的程序过程中,我也需要在该向量中存储指向派生类对象的共享指针,并且在程…
每帧在shared_ptr中动态分配图像
我在这里第一次尝试使用shared_ptr,但是在执行此操作时遇到了一些问题。 我想每帧获取 IplImage 并分配给shared_ptr 类成员,释放最后一个图像。它是…