list容器assign()同样代码为什么vs05可以通过二vc++6.0不行解决思路

list容器assign()同样代码为什么vs05可以通过二vc++6.0不行
#include <iostream>
#include <list>
using namespace std;
void main(void)
{
list <int> li;
int a[] = {1,2,3,4,5,6,7,8,9};
li.assign(a+1,a+5);///为什么编译器说这个有错 我觉得没错 帮忙看看
list <int>::iterator it;
it = li.begin ();
while(it != li.end ())
{
cout << *it <<" ";
it++;
}
cout << endl;
}

------解决方案--------------------
lz不知道 vc 6 对STL支持很有限吗?而且 bug十分多!

------解决方案--------------------
template <class InputIterator>
void assign ( InputIterator first, InputIterator last );
void assign ( size_type n, const T& u );

http://www.cplusplus.com/reference/stl/list/assign/

楼主用法无错

珍惜生命 远离VC6.0~ ~