gpt4 book ai didi

c++ - 无法使用()创建原子

转载 作者:行者123 更新时间:2023-12-03 07:38:09 24 4
gpt4 key购买 nike

我试图以不同的方式创建std::atomic_bool对象:

std::atomic_bool f1 = false;   // OK
std::atomic_bool f2 = {false}; // OK
std::atomic_bool f3{false}; // OK
std::atomic_bool f4(false); // ERROR: expected identifier before «false»
为什么最后一个不起作用?
附言:用 g++ -std=c++20编译。
编辑:这些是类成员变量。

最佳答案

您不能使用括号来初始化成员变量,因为根据语法,该变量必须是成员函数声明。
直到有可能在变量的声明中写入成员初始化程序之后,这种语法上的怪异问题才引起任何问题。

关于c++ - 无法使用()创建原子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65123708/

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