c++ - 错误:assigning to an array from an initializer list c++

标签 c++ arrays error-handling variable-declaration

我已经声明了一个全局多维数组int possw[8][2]然后我调用了一个函数,通过使用另一个初始化了int w[2]的数组来对其进行更改

possw[8][2] = {{b[0]+1,b[1]+2},{b[0]+2,b[1]+1},{b[0]+2,b[1]-1},{b[0]+1,b[1]-2},{b[0]-1,b[1]-2},{b[0]-2,b[1]-1},{b[0]-2,b[1]+1},{b[0]-2,b[1]+2}};

稍后阅读了一些StackOverflow帖子后,我意识到我必须使用possw[][],但这也给了我一个错误。
error: expected primary-expression before ']' token

我该怎么办?

最佳答案

您不能分配给数组,只能复制到该数组。

这里一个可能的解决方案是制作另一个数组,例如您初始化的new_passw:

int new_passw[8][2] = {{b[0]+1,b[1]+2}, ... }};

然后,从此new_passw数组复制到旧的passw数组。

关于c++ - 错误:assigning to an array from an initializer list c++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59873907/

相关文章:

php - 最佳实践 : Where to Add Email Error Logging in a Laravel 5 App

javascript - 我可以导出/要求 Node.js 中的模块在没有 var 保存其对象的情况下使用吗?

c++ - 寻找相机之间的外部因素

C++:从键和值 vector 插入 boost::unordered_map

c++ - 在复制初始化中是否返回对本地对象未定义行为的引用?

c - 使用结构体和数组

javascript - 您如何在对象中搜索属性中的属性?

c# - 通过字节数组转换发送图像,从 java 到 c#

c# - C#Live版本未显示正确的错误响应

c++ - 在 C++ 中清理代码以 printf size_t(或 : Nearest equivalent of C99's %z in C++)