C++新手上路,vector初始化的问题,急!

Kunikda 2014-10-16 10:45:05
代码如下,大家不必看逻辑,看一下语法就行了。
编译通不过啊。一直报错:error: in C++98 ‘iv’ must be initialized by constructor, not by ‘{...}’
#include<iostream>
#include<vector>

using namespace::std;

class Solution{
public:
vector<int> ivect;
int num;
Solution(vector<int> &a,int n):ivect(a),num(n) {}
int remove();
};

int Solution::remove()
{
int index = 1;
int i = 1;

for(i=index+1; i<num; i++){
if(index == num)
return index;
if(this->ivect[index] != this->ivect[i]){
++index;
this->ivect[index] = this->ivect[i];
}
}

return index;
}

int main()
{
int num;
vector<int> iv={1,1,2,3,4,5,5,5,6,6,6,7,7,7,7,7};

num = iv.size()/sizeof(iv[0]);
Solution solu(iv,num);

int i = 0;
int index = solu.remove();
for(i=0; i<= index; i++){
cout<<iv[i]<<endl;
}

return 0;
}
...全文
460 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
Kunikda 2014-10-17
  • 打赏
  • 举报
回复
引用 3 楼 ForestDB 的回复:
in C++98⋯⋯ 很明显了吧 能这么写的是最新的C++
那么如何让我的g++支持最新的C++99呢
ForestDB 2014-10-17
  • 打赏
  • 举报
回复
in C++98⋯⋯ 很明显了吧 能这么写的是最新的C++
li4c 2014-10-17
  • 打赏
  • 举报
回复
g++ -std=c++11 
FancyMouse 2014-10-17
  • 打赏
  • 举报
回复
-std=c++11
赵4老师 2014-10-17
  • 打赏
  • 举报
回复
把有限的生命浪费在品尝/品鉴无穷多种的语法糖中,我认为不值当。
Kunikda 2014-10-16
  • 打赏
  • 举报
回复
引用 1 楼 hrlhrl0 的回复:
去掉=。。。。。。。。。。。
尝试过了,还是不行。就是那个第三十四行,去掉=号和现在这样写,C++vector初始化都支持的啊
hrlhrl0 2014-10-16
  • 打赏
  • 举报
回复
去掉=。。。。。。。。。。。

64,654

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧