问题标签 [auto-ptr]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
660 浏览

c++ - 为什么它可以在 GNU/C++ 中编译,而不能在 VC++2010 RTM 中编译?

在 Eclipse(GNU C++.exe -v gcc version 3.4.5 (mingw-vista special r3)) 中有两个编译错误:

描述资源路径位置类型初始化参数 1 的void sink_base(std::auto_ptr<Base>)' from result ofstd::auto_ptr<_Tp>::operator std::auto_ptr<_Tp1>() [with _Tp1 = Base, _Tp = Derived]' auto_ptr_ref_research.cpp auto_ptr_ref_research/auto_ptr_ref_research 190 C/C++ 问题

说明 资源路径位置 类型没有匹配函数调用`std::auto_ptr::auto_ptr(std::auto_ptr)' auto_ptr_ref_research.cpp auto_ptr_ref_research/auto_ptr_ref_research 190 C/C++ 问题

但它在 VS2010 RTM 中是正确的。

问题:

  1. 哪个编译器代表 ISO C++ 标准?

  2. 案例4的内容是问题“auto_ptr & auto_ptr_ref要解决?”

0 投票
2 回答
6300 浏览

c++ - 向量的编译问题>

考虑以下代码:

尝试编译它时,我从 g++ 中得到以下晦涩的编译器错误:

在我看来,这里的 consts 存在某种问题。这是否意味着auto_ptr不能在vectors中使用?

0 投票
2 回答
1761 浏览

c++ - 普通指针与自动指针 (std::auto_ptr)

代码片段(普通指针)

代码片段(自动指针)

情况1:

案例二:

有人可以告诉为什么它对案例 1 不起作用吗?

0 投票
2 回答
477 浏览

c++ - 非对象类型的 C++ 智能指针?

我正在尝试使用智能指针,例如 auto_ptr、shared_ptr。但是,我不知道如何在这种情况下使用它。

我不确定,但我认为存储变量只是一个 malloc 的内存,而不是 C++ 类对象。有没有办法将智能指针用于存储变量?

谢谢你。

0 投票
3 回答
307 浏览

c++ - 自动指针的容器

我知道不应该使用自动指针容器,这可能会导致问题。真正的原因是什么?是否有任何其他类型的“智能”指针可以在容器中安全使用?

0 投票
3 回答
23000 浏览

c++ - 那么unique_ptr可以在stl集合中安全使用吗?

我对 unique_ptr 和右值移动哲学感到困惑。

假设我们有两个集合:

现在我预计以下操作会失败,因为不知道算法在内部做什么,并且可能会制作内部数据透视副本等,从而从 auto_ptr 中剥夺所有权:

我明白了。并且编译器正确地不允许这种情况发生。

但后来我这样做:

这可以编译。我不明白为什么。我不认为 unique_ptrs 可以被复制。这是否意味着不能采用枢轴值,因此排序效率较低?或者这个支点实际上是一个举动,实际上与 auto_ptrs 的集合一样危险,应该被编译器禁止?

我想我错过了一些重要的信息,所以我急切地等待有人向我提供啊哈!片刻。

0 投票
3 回答
4688 浏览

c++ - Qt 和 auto_ptr

我刚刚发现了 auto_ptr 的概念并且很喜欢它!由于 Qt 经常需要 QList 或 QVector<(some QObject or QWidget) *>,所以有什么具体的理由应该避免使用 auto_ptr。如果我是对的,它允许您替换它:

更短的东西(即没有清理)

... Qt 仍然可以使用 auto_ptr 来发挥其共享内存的魔力吗?父子自动内存管理是否仍然透明运行?谢谢

0 投票
1 回答
622 浏览

c++ - 不能毫无问题地从 auto_ptr 继承

我想做的是:

(我实际上也有处理数组的 auto_ptr 类的副本,但同样的错误适用于 stl 类)

使用 GCC 4.3.0 的编译错误是:

我不明白为什么它不匹配 autostr 参数作为 autostr(autostr&) 的有效参数。

0 投票
5 回答
525 浏览

c++ - 在动态分配的数组上使用 auto_ptr 的正确方法是什么?

如果我使用 auto_ptr 来保存指向动态分配数组的指针,当 auto_ptr 被杀死时,它将使用普通的删除操作而不是delete[],因此不会删除我分配的数组。

我如何(正确)在动态分配的数组上使用 auto_ptr?

如果这是不可能的,动态分配的数组是否有另一种智能指针替代方案?

提前致谢。

0 投票
2 回答
347 浏览

c++ - 为什么 auto_ptr 可以“密封”容器

wikipedia 上的 auto_ptr 说“包含 STL 容器的 auto_ptr 可用于防止进一步修改容器。”。它使用了以下示例:

如果我取消注释最后一行,g++ 将报告错误为

我很好奇为什么转移了这个vector的所有权后,就不能再修改了?

非常感谢!