这是我尝试过的:
int fun1(vector<int> s)
{
const int n = s.size();
int arr[n]; //<----want to declare an array of length s.size()
}
但这告诉我 n 不是一个常量表达式,所以我不能用它来声明数组大小。但如果我尝试:
int fun1(vector<int> s)
{
const int n = 10;
int arr[n]; //<-----this works
}
然后就好了。即使我将向量 s 设为 const 类型,它仍然不会将大小识别为常量表达式。我该怎么做?