gpt4 book ai didi

c++ - 如何分配原子类型的 vector ?

转载 作者:行者123 更新时间:2023-12-03 13:19:48 25 4
gpt4 key购买 nike

如何分配具有原子类型的 vector 成员?

#include <iostream>
#include <thread>
#include <vector>

using namespace std;

int main()
{
vector<atomic<bool>> myvector;
int N=8;
myvector.assign(N,false);
cout<<"done!"<<endl;
}

https://wandbox.org/permlink/lchfOvqyL3YKNivk
prog.cc: In function 'int main()':
prog.cc:11:28: error: no matching function for call to 'std::vector<std::atomic<bool> >::assign(int&, bool)'
11 | myvector.assign(N,false);
| ^

最佳答案

std::atomic既不可复制也不可移动构造,因此您可以改为:

std::vector<std::atomic<bool>> myvector(8);
for (auto& b : myvector) { std::atomic_init(&b, false); }

关于c++ - 如何分配原子类型的 vector ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59549600/

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