小编jin*_*hui的帖子

为什么C ++可以“填充”初始化可变大小的数组?

#include <iostream>
using namespace std;
void aa(int n) {
    int test[n] = {0};
}
int main() {
    aa(10);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

并得到

error: variable-sized object may not be initialized
Run Code Online (Sandbox Code Playgroud)

#include <iostream>
using namespace std;
void aa(int n) {
    int test[n];
    fill(test,test+10,0);
}
int main() {
    aa(10);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

还可以

我想知道为什么在前一个失败的情况下编译该文件的原因。

c++ arrays stack variable-length-array clang++

5
推荐指数
1
解决办法
94
查看次数

标签 统计

arrays ×1

c++ ×1

clang++ ×1

stack ×1

variable-length-array ×1