C++在构造函数中初始化未知大小的2DimArray

我遇到了问题。我想在类的构造函数中初始化我的2Dim数组,这是一个类的成员。例如 。C++在构造函数中初始化未知大小的2DimArray

class Foo 

{

private:

bool testArray[100][4];

public:

Foo(bool t_array[][4]);

};

在Foo.cpp中文件

Foo::Foo(bool array[][4]) 

{

// initilize it in there with unknown row size

}

我没有特定的行大小,但我知道,这将是最大100

我怎么能用来初始化我testArray在我构造函数?提前致谢。

回答:

由于bool [100][4]类型的数组在传递给构造函数时会衰减到bool (*) [4]类型的指针,因此您还应该传递行数。这个构造函数没有其他方法可以找出这个数组的实际大小。

或者,您可以考虑使用std::vector< std::array<bool, 4> >代替。

以上是 C++在构造函数中初始化未知大小的2DimArray 的全部内容, 来源链接: utcz.com/qa/263526.html

回到顶部