unique-ptr 相关问题

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

flat_hash_map + unique_ptr

为什么这会创建一个内部为nullptr的unique_ptr? (使用简化的示例。)absl :: flat_hash_map >字符串; auto&s =字符串[0]; ...

回答 1 投票 0

std :: unique_ptr的自定义删除器如何工作?

根据N3290,std :: unique_ptr在其构造函数中接受一个deleter参数。但是,我无法在Windows中使用Visual C ++ 10.0或MinGW g ++ 4.4.1在Ubuntu中使用g ++ 4.6.1。 ...

回答 4 投票 55

智能指针是否可以分别进行转发声明和初始化?

我正在尝试学习如何在Cpp中使用智能指针,并且遇到了障碍。我想在我的代码的一部分中声明我的变量为unique_ptr,可能作为类成员或... ... >>>

回答 1 投票 0

C ++:使用std :: unique_ptr访问过载运算符++的最佳方法?

如果我有一个带有重载的运算符++的类,例如:在标头中:SomeClass&operator ++(int);实现:SomeClass&SomeClass :: operator ++(int){someLocalVar ++;返回这个} ...

回答 1 投票 0

C ++初始化一个int 0问题的unique_ptr

环境:C ++ 11/14和MacOS Clion首先,我知道用nullptr而不是int:0构造一个unique_ptr更好,但是我只是想知道是什么导致了以下两个编译结果:/ ...] >

回答 1 投票 0

使用相同的unique_ptr执行两次std :: move两次

如果我使用相同的unique_ptr两次调用std :: move会发生什么? unique_ptr foo(new int(5)); unique_ptr bar = move(foo); unique_ptr baz = move(foo);

回答 1 投票 0

我如何移动包含unique_ptr作为成员的对象的向量?

我有一个函数返回一个包含std :: unique_ptr作为成员的类的std :: vector。我需要将此向量对象存储在堆上,以便可以通过C风格的DLL接口传递它。 ...

回答 1 投票 0

指向数组的unique_ptr是否会在调用release()之后自动释放动态内存?

据我所知,调用std :: unique_ptr :: release仅转移所有权,不会释放动态内存。从C ++ Primer 5th:p2.release(); //错误:p2不会释放内存...

回答 2 投票 5

在将其移入基类构造函数之前,如何从unique_ptr中提取原始指针

我非常需要访问特定于派生类的功能,在构造包含类时,我在unique_ptr中获得了一个实例。然后,该包含类必须移动...

回答 1 投票 1

我需要在构造函数中显式初始化std :: unique_ptr吗?

我有一个其中其中一个字段为std :: unique_ptr的类。构造父类对象时,此字段最初未设置。我需要做:field_(nullptr)还是该字段会得到...

回答 1 投票 0

已删除函数的使用unique_ptr

我有一个使用唯一指针向量的实体类。由于某种原因,它给出以下错误:错误日志:在/ usr / include / c ++ / 8 / vector:62包含的文件中,...

回答 1 投票 1

如何创建带有不可复制和不可分配对象的向量?

我有一个类class A {public:A(int x):x_(x){} void SetValue(int m){x_ = m};私人:DISALLOW_COPY_AND_ASSIGN(A); };我正在尝试创建类型为A的对象的向量vector

回答 1 投票 3

初始化类中unique_ptr的向量

我正在尝试在类中初始化unique_ptr的向量。目前,我不知道此向量的大小,因此我想初始化为空,以后再推。 class Action {...

回答 1 投票 0


foreach循环中指针到std :: unique_ptr的隐式转换

我有一个api调用,该调用填充了供调用者使用的原始指针数组。该函数堆分配每个原始指针,但不分配数组。我无法更改此API函数...

回答 4 投票 0

unique_ptr的增量导致用户定义的运算符出现意外行为!=

这是一个非常具体的问题,需要较长的解释时间,请耐心等待,我会尽力总结一下。我创建了2种用户类型,第一种在第二种内部使用:struct ...

回答 1 投票 0

将每个指针包装在向量中的foreach循环的unique_ptr中

我有一个api调用,该调用填充了供调用者使用的原始指针数组。该函数堆分配每个原始指针,但不分配数组。我无法更改此API函数...

回答 4 投票 0

如何将现有对象的地址分配给智能指针?

#include 类栏{};无效foo(bar&object){std :: unique_ptr 指针=&object;我想将对象的地址分配给指针。上面的代码...

回答 6 投票 20

为什么匿名unique_ptr值会立即被破坏

如何对象unique_ptr behaves if it's passed anonymously (or to no variable at all). How is it possible to know whether the unique_ptr has reference (it's being set into named ...

回答 1 投票 2

将std :: unique_ptr作为带有std :: move的qt信号参数传递

我在Qt中工作,我没有提到它,因为我认为这只是C ++问题。我用共享指针解决了这个问题,所以不要给我解决方案。但这是理解的问题,我想...

回答 2 投票 0

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