gpt4 book ai didi

c++ - std::vector> 不编译

转载 作者:行者123 更新时间:2023-11-30 01:53:49 30 4
gpt4 key购买 nike

当我声明一个 unique_ptr vector 时,我得到了这种错误:

d:\qt\mingw64\include\c++\4.8.0\bits\stl_construct.h:75: error:
use of deleted function 'std::unique_ptr<_Tp, _Dp>::unique_ptr(
const std::unique_ptr<_Tp, _Dp>&) [with _Tp = int; _Dp = std::default_delete<int>]'

这看起来像是创建没有复制构造函数的对象容器的经典错误。

但是,由于 c++11 移动语义,unique_ptrs 的标准容器在我能找到的所有内容中都有记录。

我正在使用 MinGW-gcc 64 位编译,使用 -std=gnu++11。

是不是只有c++11支持,gnu++11不支持?

谢谢

最佳答案

以下将使用 C++11 进行编译。

#include <iostream>
#include <vector>
#include <memory>
using namespace std;

int main()
{
std::vector<std::unique_ptr<int> > asdf;
return 0;
}

关于c++ - std::vector<std::unique_ptr<int>> 不编译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22788275/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com