【发布时间】:2018-08-31 10:40:03
【问题描述】:
我正在尝试在函数something 内部创建大小为max_value 的数组new_array。 max_value 的值只能在运行时知道。如何修复此代码?
void something (int input_array[], int array_length) {
int max_value = *std::max_element(input_array, input_array + 8);
int new_array[max_value] = {0};
}
我收到实时问题消息:“可变大小的对象可能未初始化”
【问题讨论】:
-
C++ 没有可变长度数组。使用
std::vector。 -
使用
std::vector<int> new_array(max_value); -
“编译前”只是太早了。
标签: c++ arrays function parameters initialization