vector<T>::iterator iter

这是一个打印容器里元素的程序,为了使函数有普适性,用了模板,但是出了错,看了好久也没明白,求指点!#include<vector>#include<iostream>us... 这是一个打印容器里元素的程序,为了使函数有普适性,用了模板,但是出了错,看了好久也没明白,求指点!
#include<vector>
#include<iostream>
using namespace std;
template <typename T>
void printvector(vector<T>& v,char*s)
{
if(v.empty())
cout<<s<<"是空的"<<endl;
else
{
vector<T>::iterator iter=v.begin();
cout<<s<<"为 ";
for(;iter!=v.end();iter++)
cout<<*iter<<" ";
cout<<endl;
}
}
int main()
{
vector<int> g(5,9);
printvector(g,"g");
return 0;
}
编译器说In function 'void printvector(std::vector<T>&, char*)': need 'typename' before 'std::vector<T>::iterator' because 'std::vector<T>' is a dependent scope|
为什么会这样?
展开
 我来答
xey_csu
2013-07-26
知道答主
回答量:21
采纳率:0%
帮助的人:22.1万
展开全部
printvector<int>(g,"g");
追问
谢谢你的回答,但试了,没有用,还是老问题
追答
我在VC 6.0下试过了,没问题的
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式