ICode9

精准搜索请尝试: 精确搜索
  • c – Shared_ptr和unique_ptr,但有异常2019-08-24 07:14:42

    从en.cppreference.com起 Typical uses of std::unique_ptr include: providing exception safety to classes and functions that handle objects with dynamic lifetime, by guaranteeing deletion on both normal exit and exit through exception passing owne

  • c – std :: make_unique SFINAE友好吗?2019-08-24 05:05:50

    我正在做一些模板元编程,我想实现一个通用的克隆函数,它根据SFINAE表达式的有效性选择克隆方法(替换失败不是错误). 在this reference website它说 The function make_unique<T>( std::forward<Args>(args)... ) is equivalent to: 06001 这是否意味着以下代码 template <ty

  • c – 如何将unique_ptr与std :: copy一起使用?2019-08-23 22:05:51

    我用Google搜索,一无所获.我想我只是不知道如何输入正确的问题. 好的,我的简单MemoryBlock类有两个成员数据,int size和int * data.因此,为了构建一个复制构造函数,我使用std :: copy来进行内存复制.现在我想尝试使用C智能指针替换原始指针.假设使用unique_ptr< int>数据.以下代码

  • c – 返回值优化不适用于const unique_ptr成员?2019-08-23 03:06:55

    我有一个类Whole通过unique_ptr保存类Part的对象.由于我没有为Whole提供copy-constructor,因为unique_ptr成员删除了copy-constructor.这是代码: class Part { }; class Whole { public: Whole(std::unique_ptr<Part> part) : part(std::move(part)) { } private: con

  • 在C中的unique_ptr之间进行转换2019-07-28 17:09:14

    我有以下C 11构造: #include <vector> #include <memory> class X { public: void f(void) { } }; class Y : public X { public: void g(void) { } }; class A { private: std::vector <std::unique_ptr <X> > xs; public:

  • c – unique_ptr – 无效指针和段错误2019-07-28 17:07:59

    我正在学习新的C 11标准并在SFML中编写小游戏.我已经遵循代码,我试图将精灵的指针传递给另一个对象. bool Game::detectCollision() { std::unique_ptr<sf::Sprite> sprPtr1(&iPlayer.charSprite); return field.detectCollision(sprPtr1); } bool FieldElem::detectColl

  • c – 之后填充std :: unique_ptr2019-07-27 20:07:31

    我有一个函数,它获取指针指针,并填入值: void GetSensor(Sensor **sensor); 通常,我必须这样做来创建传感器并释放它: Sensor *sensor; GetSensor(&sensor); // Do something with the sensor delete sensor; 现在我想使用std :: unique_ptr执行相同的任务.我知道我可以这样做: s

  • c – 如何为包含需要2个参数的c函数的unique_ptr类成员创建自定义删除器?2019-07-27 18:05:56

    我正在尝试使用mupdf创建一个程序(在Qt中),这将允许我将文档的对象列为列表,并允许我选择要呈现/不呈现的对象.由于Qt是c,我对它更熟悉,我试图在m类中包装mupdf中定义的结构. 现在我的问题是这个 – 你在mupdf中做的第一件事就是创建一个全局上下文,它传递给所有东西,包括清理和删

  • c – 将派生类unique_ptr分配给基类unique_ptr2019-07-27 14:14:45

    我创建了一个从std :: istream派生的自定义istream,当文件是压缩文件时使用自定义streambuf,否则使用std :: filebuf. #mystream.h class my_stream: public istream { public: explicit my_stream(const std::string &path); private: std::unique_ptr<std:

  • c – 为什么在添加带有唯一指针到我的头文件的向量后,我得到:“尝试引用已删除的函数”错误?2019-07-27 10:05:34

    要学习C,我正在编写游戏.在这个游戏中,可以有两个玩家.那些玩家可以通过套接字相互连接.在向玩家标题添加带有唯一指针的向量后,我收到错误:“错误C2280’std :: unique_ptr> :: unique_ptr(const std :: unique_ptr< _Ty,std :: default_delete< _Ty>>&)’ :尝试引用已删除的函数“.

  • c – 在make_unique中使用此*2019-07-27 03:08:45

    我有一个工厂设计模式的小例子,我对这部分感兴趣: std::make_unique< A >(*this) ……特别是*这个. 这是否意味着clone()方法返回一个指向工厂类成员的std :: unique_ptr? createInstance()总是返回Factory类的同一个成员? 我只是困惑了什么std :: make_unique< A>(* this)应该这样

  • c – 如何将Derived对象添加到unique_ptr的向量中2019-07-25 06:04:51

    如何将不同的派生对象添加到unique_ptr的向量上. 使用指针向量我将创建项目然后一个基指针指向对象并传递要添加的指针,但make_unique dos不接受指针,我不想为每种类型的派生objs制作重载函数. class Base{...}; class Item:public Base{...}; Add_Item(Base* thing) { v

  • c – 无法理解如何将新对象添加到std :: list>2019-07-25 05:07:56

    我对于unique_ptr的std :: list有一个奇怪的问题. 类slFlyingMonster派生自类slMonster. 以下代码有效: std::unique_ptr<slMonster> ptr(new slFlyingMonster(md)); 但是这段代码: std::list<std::unique_ptr<slMonster>> mMonsters; mMonsters.push_back(new slFlyingMonster(md

  • c – vector>使用初始化列表2019-07-24 13:08:59

    我有一个错误:调用’std :: __ 1 :: unique_ptr>’的隐式删除的复制构造函数当编译代码类似于下面的使用 c -std = c 14 unique_ptr_vector.cpp -o main 这是一个简化版本: 头文件’my_header.h’: #include <iostream> #include <string> #include <memory> #include <vector> clas

  • c – 为什么我不能使用迭代器将unique_ptr从集合移动到函数参数?2019-07-23 02:07:35

    我有一组unique_ptr实例,并希望将所有这些实例作为参数传递给函数.以下代码演示的示例. #include <memory> #include <set> #include <vector> using std::set; using std::unique_ptr; using std::vector; void doStuff(unique_ptr<int> ptr) { // doing stuff... } int mai

  • java – 将std :: unique_ptr传递给JNI2019-07-04 07:49:00

    我用JNI包装了一些C代码,偶然发现了以下工厂函数: std::unique_ptr<MetricPlanner> create_metric_planner(*arguments*) 我需要传递一个对该函数创建的规划器的引用,以供以后使用,但我很困惑 a)如何将其传回去,和b)一旦传递将会发生什么. 通常情况下,我一直这样过去: Director *D

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有