有没有办法在 C++ 中声明另一个变量大小的变量?

And*_*nda 0 c++ size

我真的需要在我的代码中做这样的事情: char str[var+1]; 但我知道你只能在 [] 之间放一个常数。所以我只是问是否有任何方法可以做我需要的。

eer*_*ika 6

只能在 C++ 中声明编译时常量大小的变量。

但是,动态数组可以具有动态大小。创建动态数组的最简单方法是使用std::vector,或者在字符串的情况下可以使用std::string. 例子:

 std::string str(var+1, '\0');
Run Code Online (Sandbox Code Playgroud)