c++ - 用数组声明函数
问题描述
首先,我是一个 C++ 菜鸟!话虽如此,我需要声明一个初始化网格的函数。该函数将一个 int 数组作为输入,并需要返回一个int
. 我有:
array<int> InitializeGrid (array<int>)
{
const int NB_ROWS = 10;
const int NB_COLUMN = 10;
const int WATER = 0;
int grid[NB_ROWS][NB_COLONN];
for (int i = 0; i < NB_ROWS; i++)
{
for (int j = 0; j < NB_COLONN; j++)
{
grid[i][j] = WATER;
cout << grid[i][j] << " ";
}
cout << endl;
}
return ??
}
解决方案
如果通过引用传递数组,则不需要返回任何内容:
#include <array>
#include <iostream>
static const int NB_ROWS = 10;
static const int NB_COLUMN = 10;
static const int WATER = 0;
void InitializeGrid (std::array<std::array<int, NB_COLUMN>, NB_ROWS> &grid)
{
for (auto &row : grid)
{
for (auto &col : row)
{
col = WATER;
std::cout << col << " ";
}
std::cout << '\n';
}
}
int main()
{
std::array<std::array<int, NB_COLUMN>, NB_ROWS> grid;
InitializeGrid(grid);
}
顺便说一句,如果你WATER
是0
,写就足够了
std::array<std::array<int, NB_COLUMN>, NB_ROWS> grid{};
将所有元素初始化为零。
推荐阅读
- javascript - 如何使用 Google 跟踪代码管理器的自定义 Javascript 变量对具有多个 pageAttributes 的帖子进行分类?
- python - 按一列分组并计算 Pandas 中的多个类别
- python - 使用 2 个不同长度的数组 Numpy Python
- facebook - 虚幻引擎 4.22 - 无法应用 Facebook SDK 9.0.1
- linux - 更新 pip3 后出现语法错误
- php - 不知何故,API 没有通过 cURL 发送我的参数,我怎样才能让它工作?
- sql - 如何在 SQL 中使用 Mode 删除重复值
- javascript - VueJS - 将更多文本插入 div 时平滑过渡
- samba - 无法将 Samba 共享从 CentOS 映射到 Win10 - 错误 67 “找不到网络名称”
- java - 加特林负载测试期间出错 - ClassNotFoundException: io.gatling.compiler.ZincCompiler