c++模版问题,解决给100分
在dev c++里写如下代码,通不过编译,一样的代码在vc6.0里可以用,以前一直用vc6.0,现在在学习模版6.0不支持偏特化,转到dev c++里,结果没有用偏特化就通不过编译了,那个老大给帮忙解决一下,先给20分,解决了再给100,此贴如果解决不了坚决不给分,宁肯扣信誉分了......
#include <iostream>
using namespace std;
template<typename T>
struct MyIter{
typedef T value_type;
T *ptr;
MyIter(T *p = 0):ptr(p){}
T & operator*() const {return *ptr;}
};
template<typename T>
struct iterator_traits{
typedef typename T::value_type value_type;
};
template<typename I>
typename iterator_traits<I>::value_type func(I ite){ return *ite;} //就是这行不对,说什么
// expected nested-name-specifier before "iterator_traits"