unique-ptr 相关问题

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

c ++使用reinterpret_cast来将unique_ptr *转换为unique_ptr *以创建可变形树结构

我目前正在编写一个需要操纵树结构(抽象语法树)的程序。在树中,节点将其子节点作为unique_ptr拥有,如下所示:struct Node {//以替换...

回答 1 投票 -1

是否可以在QPairs的QList中存储unique_ptr?

为了避免很多不必要的复制,我试图将unique_ptr存储在成对的列表中。我正在使用一个简单的Test类,它使用一个QString;我正在使用带有std :: unique_ptr的Qt5.4的VS2013; ...

回答 1 投票 4

如何通过指针从容器中删除unique_ptr?

创建对象并使用unique_ptr赋予容器所有权没有问题。如何通过原始指针删除元素? std :: set > mySet; MyClass ...

回答 5 投票 7

[shared_ptr <>是weak_ptr <>,就像unique_ptr <>是……什么?

在C ++ 11中,您可以使用shared_ptr <>与对象或变量建立所有权关系,并使用weak_ptr <>以非所有权方式安全地引用该对象。您也可以使用...

回答 8 投票 53

const unique_ptr的propagate_const

以下示例摘自cppreference:#include #include #include struct X {void g()const {std :: cout <

回答 1 投票 1

将向量 >转换为向量

有一个向量std :: unique_ptr . I need to pass that data to a function that expects a vector of A. I tried using std::transform, like this: std::vector > ...

回答 1 投票 2

使用unique_ptr和原始指针重载全局函数

我一直在开发c ++的功能,该功能使用一些用C语言编写的旧代码。我一直在遇到带有重载版本的函数的编译器错误,该函数采用unique_ptr或raw ...

回答 1 投票 2

为什么unique_ptr :: release没有用[[nodiscard]]定义?

添加了[[C ++ 17] [[nodiscard]]。 C ++ 20在空方法中添加了[[nodiscard]]的用法,例如vector vector :: empty()-也许是为了避免用户与clear方法混淆(即,意外地对...

回答 3 投票 5

为什么unique_ptr :: release没有用[[nodiscard]]定义?

[C ++ 17添加了[[nodiscard]] C ++ 20添加了对[[nodiscard]]在空方法上的使用,例如vector vector :: empty()-也许是为了避免用户与clear方法混淆(即,意外地对...

回答 3 投票 4



std :: vector > :: push_back()的正确语法是什么? [关闭]

我已经阅读过,如果我想使用std :: vector >中的push_back,则需要为unique_ptr定义一个删除程序。真的吗?如果是,执行此操作的正确语法是什么? ...

回答 1 投票 0

shared_ptr 无法编译

int main(){//指令1-> OK std :: unique_ptr sp2(new int [10]); //指令2->错误无法编译std :: shared_ptr sp1(new int [10]); } I ...

回答 1 投票 0

唯一指针-为什么析构函数被调用3次

我有一个按值返回对象的方法。该方法来自我无法控制的库。为了进一步处理该对象,我想继续在...

回答 3 投票 3

无法在使用自定义运算符==()的c ++无序集合中找到用户定义的类型

问题陈述:遍历对象数组,并检查对象是否存在于unordered_set中。目标:我可以在一个容器中容纳数千个对象,以检查它们是否存在数百万个对象...

回答 3 投票 0



如何使用Visual Studio 2017在C ++中为参数化对象的数组使用唯一的指针?

考虑一个类,其默认构造函数将文件路径作为参数。类Test {public:Test(const std :: string&filepath); ... ...};现在,我想创建和...

回答 4 投票 0

带有指针的C结构,将其包装在unique_ptr中

我具有如下所示的存储结构。 struct memoryStruct {uint8_t * memory; size_t大小; };我的代码要求我在代码中的多个位置调用free(内存)。为了避免这种情况,我...

回答 1 投票 0

具有unique_ptr成员的对象的C2280错误向量

我相信我知道为什么会这样,但是对于C ++来说,我不知道正确的处理方式(不使用原始指针)。根据我的研究,发生的事情是当我尝试...

回答 1 投票 -1

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