smart-pointers 相关问题

一种抽象数据类型,它在提供附加功能时模拟指针,例如自动垃圾收集或边界检查

将智能指针作为指向函数的指针指针传递

我正在尝试将智能指针作为函数的参数传递,该函数接受指针的指针。我想知道是否有适当的解决方案。 foo(Class ** input){//做点什么} ......

回答 1 投票 0

shared_ptr奇怪的行为

这是我正在做的第一个问题。我经常搜索但找不到答案。我正在学习在c ++ 14上使用智能指针,编译器是g ++ 5.4。我想知道为什么变量“t”......

回答 1 投票 1

多态对象的数组

我经常遇到创建多态对象的数组或向量的需要。我通常更喜欢使用引用而不是智能指针来基类,因为它们往往更简单。 ...

回答 4 投票 11

构造函数中的引用初始化问题

类伪定义:基础虚拟类A:类A {public:virtual~A(); virtual void doSomething()const = 0; }; B类继承自A:B类:public A {public:void ...

回答 1 投票 1

为什么make_unique不能与具有内联构造函数的类一起使用? [重复]

我有一个定义良好的类,类A,公共:A(); A(int a); A(const A&o); A(A && o); 〜A(); A&operator =(const A&...

回答 1 投票 0

如何使用lambda作为std :: unique_ptr Deleter?

检查以下人为的程序:#include #包括 模板 使用UniPtr = std :: unique_ptr >; int * alloc()...

回答 3 投票 6

在双向链接列表中使用智能指针

以下是我对智能指针的了解shared_ptr是一个智能指针,这样多个shared_ptr可以指向堆中的对象。即使其中一个shared_ptr被删除了...

回答 2 投票 0

将std :: unique_ptr重置为指向数组的指针有什么问题?

我看到一些代码片段如下:std :: unique_ptr mCache; mCache.reset(new uint8_t [size]);有人告诉我这个代码有一些问题。谁能给我一些细节?

回答 1 投票 4

std :: shared_ptr operator []等效访问

在C ++ 17中,std :: shared_ptr有一个operator []来允许索引基于向量的指针(http://en.cppreference.com/w/cpp/memory/shared_ptr/operator_at)如何获得类似的访问权限运营商......

回答 2 投票 5

处理数组时make_unique和make_shared之间的差异

从C ++ 17开始,您可以使用make_unique来创建指向数组的智能指针,例如:unique_ptr ptr = make_unique (10);这将创建一个指向数组的智能指针...

回答 1 投票 4

自我/自己实现智能指针

我正在尝试编写自己的共享指针实现(为了好玩/挑战),但是在我无法使构造函数接受任何(自动)类型的指针变量之后,我遇到了死胡同。问题是,对......

回答 1 投票 -3

从本地原始指针初始化std :: unique_ptr是否安全?

我知道用std :: shared_ptr这样做是不明智的。但是std :: unique_ptr怎么样?例如。 :A类{public:void do_something(){}; };的std ::矢量 > uq_ptrs_; ...

回答 1 投票 0

移动后通过右值参考返回

关于以下示例我几乎没有问题:unique_ptr foo(){ unique_ptr a = make_unique(5); return move(a); } unique_ptr&& foo(){ ...

回答 1 投票 1

保持对唯一指针引用的唯一指针引用

这是一个代表我的概念问题的程序:int main(){unique_ptr a = make_unique(5); {unique_ptr &b = a; } printf(“%d”,* a);是...的所有者

回答 2 投票 2

继承类中的shared_from_this()中的类型错误(是否存在dyn.type-aware共享指针?)

我有一个基本的View Controller类,它使用'enable_shared_from_this'类ViewController:public std :: enable_shared_from_this {// ...};和一个孩子:班级......

回答 1 投票 3

将const unique_ptr引用作为参数传递

void f1(unique_ptr& upA){ //some work... //callee can mess up smart pointer many ways for caller upA.reset(); //some work... } void f2(const unique_ptr&...

回答 1 投票 2

如何将智能指针传递给期望原始指针的函数?

我有以下代码:unsigned char * frame_buffer_data {new unsigned char [data_size]}; glReadPixels(origin_x,origin_y,width,height,GL_BGR,GL_UNSIGNED_BYTE,frame_buffer_data);我想要 ...

回答 1 投票 1

将唯一指针初始化为类成员

我正在研究一个树结构,它有一个唯一指针向量作为类成员。在研究它的过程中,我意识到如果...的话,我不知道如何将一个独特的指针初始化为一个类成员。

回答 3 投票 1

C ++ Nvidia PhysX无法将PxFoundation转换为shared_ptr <>

我试图创建一个PxFoundation并将其保存在我的成员变量“foundation”中,这是一个std :: shared_ptr。但是在创建对象时,我得到了这个:C2440:' ':不能......

回答 2 投票 0

破坏父母和孩子的秩序

为什么C ++在Child类之前破坏Parent类?当一个对象超出范围首先破坏shared_ptrs然后自毁时,它是否更合乎逻辑?在我的 ...

回答 2 投票 5

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