首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

模版的有关问题

2012-02-27 
模版的问题template templateclassT classthing,classU,classVvoidshow(thing U ::Viter)//比如实参

模版的问题
template <   template   <class   T> class   thing,class   U,class   V   >
void   show(thing <U> ::V   iter)     //   比如实参可以为:vector <int> ::iterator

这是个错误的模版   请问怎么改



[解决办法]
template < template <class T> class thing,class U,class V >
void show(typename thing <U> ::V iter) // 比如实参可以为:vector <int> ::iterator
[解决办法]
为啥参数不直接用迭代器类型的
template <class T>
void show(T iter);
[解决办法]
thing <U> ::V这个东西需要typename来告诉编译器这是一个类型
[解决办法]
编译器不认识 thing <U> ::V 是什么。
[解决办法]
thing <U> ::V不写的话会认为是一个类的静态变量

热点排行