unique-ptr 相关问题

std :: unique_ptr是一个智能指针,通过指针保留对象的唯一所有权。 unique_ptr不可复制或可复制,unique_ptr的两个实例无法管理同一对象。

为什么在我什至没有积极使用的部分代码中访问地图会使程序崩溃?

我有这段代码: 类 BuffComponent :公共组件 { 民众: 使用 BuffMap = std::unordered_map>; BuffMap 爱好者...

回答 0 投票 0

如何将带有新对象的 std::unique_ptr 转换为 std::make_unique? [关闭]

我有这段代码将 std::unique_ptr 返回给某种类型的东西。目前,我只是写如下: 返回 std::unique_ptr(新类(...

回答 1 投票 0

了解 unique_ptr get() 函数

unique_ptr get() 会阻止对象通过一些引用计数被销毁吗? 考虑以下程序: #包括 #包括 int* getMemory(int...

回答 1 投票 0

C++11 unique_ptr 和 shared_ptr 可以互相转换吗?

C++11 标准库是否提供从 std::shared_ptr 转换为 std::unique_ptr 或反之的任何实用程序?这样操作安全吗?

回答 4 投票 0

如何在运行时以惯用方式存储 unique_ptr 或 shared_ptr?

我有一个类 Foo 的实例,它将传递一个指向依赖对象的智能指针。这可能是一个 unique_ptr,如果调用者想将对象的所有权转移给 Foo 实例,或者一个

回答 1 投票 0

关于使用 unique_ptr 作为向量类型的问题(C++)

我正在尝试理解一个使用 vector 的 C++ 代码,它存储 unique_ptr,其中 Base 是一个基类并且有一个派生类 Derivate。 当将 unique_ptr 推入 t...

回答 1 投票 0

移动唯一指针 - cppreference 上的未定义行为?

我有一个后续问题:Move unique_ptr: reset the source vs. destroy the old object 为了快速总结原始问题,cppreference 上有这个示例代码: 结构...

回答 2 投票 0

移动 unique_ptr:重置源与销毁旧对象

我的问题是关于 https://en.cppreference.com/w/cpp/memory/unique_ptr 中的示例 结构列表 { 结构节点 { 整数数据; std::unique_ptr 下一个; }; ...

回答 1 投票 0

向量<unique_ptr<base_class>>集合是否可能有节点树?

使用 unique_ptr 会在节点树中引起一些问题,在内存中产生难以发现的错误,Xutility,2280 错误,引用对已删除函数的调用 (VS2022/C++20)。 代码是典型的...

回答 0 投票 0

从 C++ 到 C 释放 unique_ptr 时如何避免内存泄漏

我有一个 C 程序调用一个大型 C++ 库的 C++ 包装器。 C++ 库的功能之一就是提供一些预测,而那些预测将在 C 中使用。我不知道...

回答 1 投票 0

为什么 std::unique_ptr 没有在 std::call_once 中移动? [重复]

我已经使用 std::call_once 实现了线程安全的单例模式。我故意使用 std::move 将 std::unique_ptr 移动到 CallOnce 函数中,该函数由 std::call_once 调用。然而,...

回答 0 投票 0

为什么在 std::call_once 中使用 std::move 后 std::unique_ptr 没有设置为 nullptr? [重复]

我已经使用 std::call_once 实现了线程安全的单例模式。我故意使用 std::move 将 std::unique_ptr 移动到 CallOnce 函数中,该函数由 std::call_once 调用。然而,...

回答 0 投票 0

如何为基类引用传递的值创建一个 unique_ptr?

我有基类和派生类,我需要通过虚拟成员函数 foo() 从中获得多态行为: #包括 #包括 类基础{ 民众: 虚拟...

回答 2 投票 0

像 std::unique_ptr 一样的资源管理,但用于标识符而不是指针

当包装在未定义结构上使用指针的类 C API 时,我通常使用自定义删除器去 std::unique_ptr 来处理资源。 有时,C API 会赋予整数 ID ...

回答 0 投票 0

std::unique_ptr 来自虚拟类

如何使用带有多态习语的std::unique_ptr? 例如: 抽象类{ 虚空 foo() = 0; } 类 Child1 final : public Abstract { void foo() 覆盖; } 班级 Child2 最后...

回答 1 投票 0

通过右值引用将 std::unique_ptr 传递给构造函数

考虑下面的两个构造函数: // 通过右值引用传递 data_: A类 { 民众: A(std::unique_ptr&& data_); // ... }; // 按值传递 data_: B类 {

回答 2 投票 0

派生类的 unique_ptr 作为将 unique_ptr 传递给基类的函数的参数

我正在尝试在将 unique_ptr 带到基类的函数中使用派生类的 unique_ptr。就像是: 类基础{}; 派生类:公共基础{}; void f(unique_ptr...

回答 4 投票 0

如何在 C++ 中将指针或 unique_ptr 初始化为变体

我正在分析一个或多个从二进制文件加载的大型数据表中的列。每列都可以是几种预定义类型之一,本质上是一个向量。我将列定义为变量...

回答 1 投票 0

如何访问 unique_ptr 字节数组中的字节范围?

我还是 C++ 的新手,我已经在 Unreal 中编码了一段时间,但我正在编写一个文件解析器并将其作为一个独立的解决方案来做。我想从未知的开始 p 读取未知长度的字节...

回答 1 投票 0

How to handle heap allocated fixed length byte buffers?

在 C 语言中,我们使用 char* 指向使用 malloc 分配的内存块,并在单独的大小/长度变量中跟踪大小。 什么是 C++ 等价物?据我目前所见,大多数人...

回答 2 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.