[英]error: array initializer must be an initializer list
When I define an array, I got this error: 定义数组时,出现以下错误:
In file included from a.cc:2:
./solution.h:4:13: error: array initializer must be an initializer list
int ugly[]=new int[index];
^ 1
error generated.
What's wrong with it? 它出什么问题了? Can't I define an array without initialization? 我不能在不初始化的情况下定义数组吗?
Code: 码:
class Solution {
public:
int GetUglyNumber_Solution(int index) {
int ugly[]=new int[index];
ugly[0]=1;
int t2=0,t3=0,t5=0,i;
for (i=1;i<index;i++){
ugly[i]=min(ugly[t2]*2,min(ugly[t3]*3,ugly[t5]*5));
if (ugly[t2]*2==ugly[i]) t2++;
else if (ugly[t3]*3==ugly[i]) t3++;
else if (ugly[t5]*5==ugly[i]) t5++;
}
return ugly[index-1]
}
};
That's not exactly how arrays work. 这并不是数组的工作方式。 For a simple fix: 一个简单的解决方法:
int * ugly = new int[index]
But I do suggest brushing up on your c++ - no offense intended. 但我确实建议您对C ++进行复习-并非故意。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.