smart-pointers

smart-pointers

文章 0 浏览 8

std::shared_ptr 和 std::auto_ptr 的正确用法

我知道以下智能类型的基本定义以及如何使用它们。但是我不太确定这些地方/情况 其中: std::auto_ptr 应该优先于 std::shared_ptr。 std::shared_ptr …

找回味觉 2024-12-08 08:09:59 3 0

何时使用shared_ptr,何时使用原始指针?

class B; class A { public: A () : m_b(new B()) { } shared_ptr GimmeB () { return m_b; } private: shared_ptr m_b; }; 假设 B 是一个在语义上不…

陈独秀 2024-12-07 20:52:59 4 0

Google 可以模拟具有智能指针返回类型的方法吗?

我有一个返回智能指针的工厂。无论我使用什么智能指针,我都无法让 Google Mock 来模拟工厂方法。 模拟对象是纯抽象接口的实现,其中所有方法都是虚拟…

瞄了个咪的 2024-12-07 11:57:43 5 0

当作为参数传递时,它如何将 _bstr_t 转换为 BSTR?

举一个简单的例子: _bstr_t smartString(L"MyString"); Process(smartString); // takes BSTR. 最初我以为 _bstr_t 有一个从 _bstr_t 转换为 BSTR 的…

慢慢从新开始 2024-12-07 08:10:06 9 0

将智能指针分配给_variant_t是否需要手动AddRef()?

这是一个示例片段: _variant_t var; var.vt = VT_UNKNOWN; var.punkVal = unknownInterfaceSmartPointer; unknownInterfaceSmartPointer->AddRef(); …

奢欲 2024-12-05 19:27:56 5 0

c++堆栈对象的shared_ptr

我最近一直在学习托管指针并遇到以下情况。 我正在为游戏视图实现模型/控制器类。我的观点是,将在模型中渲染事物。非常简单。在我的主函数中,我像这…

紫﹏色ふ单纯 2024-12-04 05:38:41 6 0

处理可能不指向任何内容的指针

我在管理器内保存的指向其基类的指针向量中有一组对象: std::vector objectVec; 类可能希望使用管理器中的 Add() 方法生成其中一个对象。问题是他们…

策马西风 2024-12-02 23:46:06 3 0

在使用 CreateInstance 重新分配之前需要释放 com_ptr_t 吗?

在具有 _com_ptr_t 成员的 C++ 类中,如果在同一指针上重复使用 CreateInstance() 来获取 COM 对象的新实例而不首先执行 Release(),是否会发生内存泄…

只涨不跌 2024-12-02 10:25:18 7 0

C++:使用直接返回shared_ptr的函数的值是一个坏主意吗?

例如: boost::shared_ptr test() { boost::shared_ptr x(new int(3)); return x; } void function() { int y = *test(); ... } 使用shared_ptr来避免…

短暂陪伴 2024-11-30 04:41:07 3 0

无法将 int 分配给返回类的成员 int

不能 100% 确定我的问题措辞是否正确,因为我不完全理解我的问题。 对于我的课程,我需要创建自己的智能指针来自行清理。 到目前为止,这是我的代码:…

别靠近我心 2024-11-29 21:59:31 2 0

检测 Ref-counted COM 对象上的内存泄漏(Addref without Release)

我正在编写一个 Direct3D 10 应用程序,并希望确保没有 COM 对象泄漏。 是的,我用 CComPtr 包装接口,但无论如何我都想进行泄漏检查,出于同样的原因…

静若繁花 2024-11-29 16:59:00 10 0

一起使用 smart_pointer 和 set_new_handler

是否需要担心将 set_new_handlers 与智能或自动指针结合使用,或者库中包含具有精致错误处理功能的处理程序? 谢谢…

昨迟人 2024-11-29 16:38:10 3 0

将 boost::intrusive_ptr 与嵌套类一起使用

具体来说,我需要声明(据我所知) intrusive_ptr_{add_ref,release} 作为我引用的类的朋友: #include using boost::intrusive_ptr; class Outer { p…

谁把谁当真 2024-11-29 15:18:41 4 0

COM 中 CComPtr 相对于 CComQIPtr 有何用途?

任何人都可以解释一下,COM 中 CComPtr 相对于 CComQIPtr 有什么用处? CComPtr Sample1; CComQIPtr Sample2; …

黑色毁心梦 2024-11-27 02:32:46 5 0

如何使用 new 运算符检查内存分配失败?

就在最近,我将项目语言从 C 切换为使用 C++。 对于 C,我使用 malloc,然后检查 malloc 是否成功,但对于 C++,我使用“new”来分配内存,我想知道您…

む无字情书 2024-11-26 10:49:04 3 0
更多

推荐作者

alipaysp_snBf0MSZIv

文章 0 评论 0

梦断已成空

文章 0 评论 0

瞎闹

文章 0 评论 0

寄意

文章 0 评论 0

似梦非梦

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文