另一个变量作为数组的大小

Mic*_*ael 1 c++ arrays size int

如何使用存储在int变量中的值作为数组的大小

例如。

int a = 40;
int b[a]; // a = 40
Run Code Online (Sandbox Code Playgroud)

Bat*_*eba 10

你不能 无论如何都不在标准C ++中,除非a是具有正值的a constexprconst整型。

最好的选择是 std::vector<int> b(a);

  • 对于a来说,constexpr是不必要的。在这种情况下,“ const int a = 40;”就足够了。也就是说,我看不出不使用“ constexpr”的理由。 (2认同)

小智 5

使用创建一个数组new[]

int *b = new int[a];
Run Code Online (Sandbox Code Playgroud)

但请记住稍后使用以下方式将其删除:

delete[] b;
Run Code Online (Sandbox Code Playgroud)

更好的替代方法是std容器,例如std::vector