请问有关C++标准库里的vector类,有关begin()和end()
假设有如下定义:
int a[5]={1,2,3,4,5};
vector<int> b(a,a+5);
那么b.begin()返回值的类型是int还是int*(是地址还是元素的值)?
我编写了下面一段代码:
#include <iostream>
#include <vector>
using namespace std;
int main()
{
int a[5]={1,2,3,4,5};
vector<int> b(a,a+5);
for(vector<int>::iterator index=b.begin(); index!=b.en();index++)
cout<<b[*index]<<endl;
cout<<"b.size():"<<b.size()<<endl;
return 0;
}
为什么输出的结果是:
2
3
4
5
-33686019
b.size():5