在没有Vector的情况下在c ++中返回二维数组

时间:2017-11-23 20:49:17

标签: c++

你可以在不使用向量或指针的情况下在c ++中返回二维数组吗?

我找到了这个答案,但我不想在使用点击器https://stackoverflow.com/a/4172103/4954387

时自己管理ram

1 个答案:

答案 0 :(得分:2)

  

你可以在c ++中返回二维数组而不使用向量或   指针?

仅在编译时已知大小且仅在将类数据包装为类时才知道。就像一维数组一样。您无法直接返回数组。

struct Array
{
    int array[2][3];
};

Array f()
{
    return Array { 1, 1, 1, 2, 2, 2 };
}

int main()
{
    auto const array = f();
}

如果您考虑使用类似Array的课程,请三思而后行,请注意标准库已为此提供std::array

如果您在编译时不知道大小,请删除“不使用向量”要求并使用std::vector