63 21 D:\LENOVO\Documents\队列2.cpp [Error] expression list treated as compound expression in initializer [-fpermissive]
时间: 2024-11-03 21:20:37 浏览: 40
warnings-treated-as-errors.md
这个错误信息是在C++中遇到的一个常见警告,"expression list treated as compound expression in initializer"。当你在初始化一个变量、数组或者结构体成员时,如果表达式的列表形式看起来像一个复合表达式(例如,一系列的操作符连接起来),而在某些编译器(如GCC,它默认开启了-fpermissive选项)下,这可能会被视为一个错误。
具体来说,`63 21 D:\LENOVO\Documents\队列2.cpp`表示这是在D盘Lenovo文件夹下的Documents子目录下,名为"队列2.cpp"的文件第63行和第21列。这里的错误可能是由于你尝试在初始化时使用了未正确分隔的操作符链,导致编译器无法识别每个初始化项。
解决这个问题需要检查代码对应位置,看是否应该将连续的表达式用花括号 `{}` 包裹起来,使之明确为单独的初始值表达式。例如:
```cpp
std::vector<int> vec = {63, 21}; // 更正这里,使初始化明确为两个元素
```
如果你不确定如何修正,可以查看上下文并确保所有初始化部分都被正确地独立分开。
阅读全文