c++ - 如何在函数内部创建一个数组,然后使用该数组创建另一个数组?

标签 c++ visual-c++

我是 C++ 的新手,我正在学习用 Python 编写代码。 我相信解决方案很简单,但我不知道该怎么做。

这是我在 C++ 中尝试做的(不工作):

int createBoard(int x, int y) {
    int l[x];
    int board[y, l[x]];
    return board;
}
int main() {
    int x = 5;
    int y = 6;
    board = createBoard(x,y);
    return 0;
}

这是我想要复制的(工作,但在 python 中):

def createBoard(x,y):
    length = [i for i in range(0,10)]
    area = [y,length]
    return area

area = createBoard(5,6)

基本上我想创建一个函数,它返回一个包含 y 值的数组和一个计数到 x 的数组。

最佳答案

据我从您的 Python 代码中了解到,您想要创建一个二维数组。对于 C++ 的完全初学者来说,这可能是一项具有挑战性的任务。许多人建议使用 std::vector 他们是对的,但是使用这种容器的二维“数组”可能会非常慢。因此,当您在 C++ 中获得更多经验时,此示例将起作用,但在未来的情况下不受欢迎:

#include <vector>

std::vector< std::vector<int> > createBoard(size_t x, size_t y)
{
    return std::vector< std::vector<int> >(x, std::vector<int>(y));
}

因此,如果您想使用更有效的方式创建二维数组,请参见以下示例: LINK

关于c++ - 如何在函数内部创建一个数组,然后使用该数组创建另一个数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56280793/

相关文章:

c# - 我可以以编程方式启动 Windows Management Instrumentation 服务吗?

c++ - 默认参数中的 c++ new 运算符及其副作用

c++ - C/C++ : Float comparison speed

c++ - 如何正确使用 _snprintf_s()?

c++ - 与静态 c 运行时链接时内存分配/解除分配的问题

c++ - 为什么函数返回一个空字符串

visual-c++ - 如何为dll设置宿主应用程序

c++ - 如何将参数传递给 `_T()` ?

c++ - 为什么我要重新定义;不同的基本类型?

c++ - 如何提高键类型为 std::string 的 map 查找的性能?