在C ++中初始化一对数组

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在C ++中初始化一对数组相关的知识,希望对你有一定的参考价值。

我想以下列方式初始化一对数组:

pair<int, int> adjs[4] = {{current_node.first-1, current_node.second}, {current_node.first+1, current_node.second}, {current_node.first, current_node.second-1}, {current_node.first, current_node.second+1}};

但是我的编译器Code :: Blocks 12.1继续抛出错误:

brace-enclosed initializer used to initialize `std::pair<int, int>'|

我曾经在网上编译器上使用过这种方法,但它确实有效。那么编译器的问题还是我的代码中的一些语法问题?我不想一个一个地初始化4对。建议一种方法,我可以摆脱这个错误。

以上是关于在C ++中初始化一对数组的主要内容,如果未能解决你的问题,请参考以下文章

在c ++中初始化构造函数中的c数组时出错

在c中数组初始化的背景会发生啥?

在 C 中初始化指针数组 - 可变大小的对象可能未初始化

在C中初始化字符串数组

在 C 中初始化一整列二维数组

在C中参考命名的结构成员直接初始化或分配变量数组的结构成员?