<分区>
我想知道如果我想将它用作类变量,是否有人可以给我示例说明如何声明二维数组。大小也应该是变量。
<分区>
我想知道如果我想将它用作类变量,是否有人可以给我示例说明如何声明二维数组。大小也应该是变量。
最佳答案
这取决于你所说的“数组”是什么意思。在 C++ 中,如果在编译时未知其大小(或多个大小),则无法声明内置数组类型的成员。
如果您需要一个表现为运行时大小数组的数据结构,您将不得不自己实现它或使用库实现。在那种情况下,你的类的直接私有(private)成员将不会被声明为内置数组类型,而是作为对存储在动态内存中的实际数组的某种间接引用。在最简单的情况下,您必须在类中声明一个指针 类型的成员。或者,您可以使用 std::vector
的成员类型,通常会将实际数组数据保存在动态内存中,在内部存储指针。
在您的情况下,对于二维数组,您可以声明 std::vector<std::vector<T>>
的成员类型。
关于c++ 二维数组作为私有(private)类变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18731092/