为什么这个程序不能结果呢? 谢谢

fengwei8 2007-10-14 03:58:55
include<iostream>
#include<vector>
#include<string>
using namespace std;
void main()
{
const size_t arr_size=8;
int int_arr[arr_size];
for(size_t ix=0;ix!=arr_size;++ix)
cin>>int_arr[ix];
vector<int> ivec(int_arr,int_arr+arr_size);
for(vector<int>::iterator iter=ivec.begin();iter!=ivec.end();++iter)
cout<<*(ivec[iter]);

}

为什么这个程序不能结果呢? 谢谢
...全文
118 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
fengwei8 2007-10-18
  • 打赏
  • 举报
回复
谢谢.看来还是概念不清造成的.
MPTD_Fire 2007-10-14
  • 打赏
  • 举报
回复
nx500,你都是在Linux下编译的?》
nx500 2007-10-14
  • 打赏
  • 举报
回复
#include <iostream>
#include <vector>
#include <string>
using namespace std;
int main(void)
{
const size_t arr_size=8;
int int_arr[arr_size];
for(size_t ix=0;ix!=arr_size;++ix){
cin >>int_arr[ix];
}
vector<int> ivec(int_arr,int_arr + arr_size);
for(vector<int>::iterator iter=ivec.begin();iter!=ivec.end();++iter){
cout <<*iter << " ";
}
cout << endl;
return 0;
}

heipi@Linux:~/Documents/tmp> ./o
12 32 5 2 536 13 45 123 9897
12 32 5 2 536 13 45 123
heipi@Linux:~/Documents/tmp>
nx500 2007-10-14
  • 打赏
  • 举报
回复
iterator不是下标
ckt 2007-10-14
  • 打赏
  • 举报
回复
iter是迭代器,不是整数可以拿去当下标
类时指针,

cout << *iter;

33,311

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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