auto-ptr

    1热度

    3回答

    我正在尝试编写一个小应用程序,并且遇到了使用auto_ptr的编译时错误。 我最初厌倦用我创建的类创建一个智能指针,但是如果我尝试创建一个类型为int的智能指针,就会出现同样的错误,所以我必须做其他事情。我按照给出的例子here.。 我有一种感觉,这个答案会导致我拍我自己。 我在这个文件的底部声明了智能指针。 #ifndef MAINWINDOW_H #define MAINWINDOW_H

    7热度

    1回答

    我有在异常类auto_ptr的一个问题,那我最终简化为: #include <memory> class MyException { std::auto_ptr<int> m_foo2; }; int main() { try { throw MyException(); } catch (const MyExceptio

    -1热度

    2回答

    不C++标准的保证,这里将是从功能的值返回auto_ptr的有效载荷时不崩溃: class Foo { ... }; std::auto_ptr<Foo> createFoo() { return std::auto_ptr<Foo>(new Foo(...)); } ... Foo getFoo() { std::auto_ptr<Foo> foo(createFo

    8热度

    1回答

    的“所有权,源和汇”这site状态: “当你复制一个auto_ptr,您将自动从源auto_ptr所有权转让给目标auto_ptr; 如果目标auto_ptr已经拥有的对象,该对象首先被释放。复制后,只有目标auto_ptr拥有该指针,并将在适当的时候将其删除,而源被设置为空状态,并且不能再用于引用拥有的对象。 ”。 现在考虑为templacte<classX> class auto_ptr中的o

    0热度

    4回答

    如何允许带有复制构造函数的类使用非const引用从临时对象复制构建? 的背景是这样的: 我应该返回指针的列表,所有从基地继承的对象的功能,所以我需要像vector<Base*>。 鉴于vector<auto_ptr>不是一个很好的选择,我想写一个简单的包装vector<Base*>,删除其析构函数中的所有元素。 我面临着以下问题: 我的类有一个拷贝构造函数如下: auto_list(auto_li

    3热度

    2回答

    我有一些第三方库生成并返回一个auto_ptr。不过,我真的想要使用一些STL容器。 所以我猜一个办法是 auto_ptr <int> ptr = some_library_call(); 转换成普通的C++指针。以下的工作? int* myptr = ptr; 如果没有,什么是使用STL的auto_ptr用(是的,我知道这不会直接合作......我知道,STL和auto_ptr的不混合在

    1热度

    2回答

    我是C++的新手,对auto_ptr有点困惑。 我有一个里面有一个静态auto_ptr的类。 static std::auto_ptr<MyCompany::CConnection> con = std::auto_ptr<MyCompany::CConnection> (util::getDBConnection()); 的Util :: getDBConnection()实现: CConn

    0热度

    1回答

    这个例子是从Stroustup的书,第三版,第14.4.2节采取: void f (Point p1, Point p2, auto_ptr<Circle> pc, Shape* pb) { auto_ptr<Shape> p (new Rectangle(p1 ,p2)); auto_ptr<Shape> pbox(pb); p->rotate(45);

    2热度

    2回答

    我相信有从Stroustup的薄提取这个代码片断一个错字,在其368页: template <class X> class std::auto_ptr { template <class Y> struct auto_ptr_ref { /* ... */ }; // helper class X * ptr; public : typedef X ele

    0热度

    2回答

    可以存储指向auto_ptr(s)的指针到std :: vector中吗?它安全吗? 我列举了一个读取XML文件的文件夹,并用auto_ptr为每个文件创建了一个对象。我事先并不知道会有多少XML文件,我想使用一个向量来保存指向它们的指针列表。 我还假设,当指针从Vector中移除(或者矢量被销毁)时指针几乎消失了,所以我不必担心将它们设置为NULL。