设为首页 加入收藏

TOP

C++学习:关于“std::vector(Type)::iterator”的一个错误
2015-07-20 17:24:57 来源: 作者: 【 】 浏览:3
Tags:学习 关于 std::vector Type ::iterator 一个 错误

在类模板里面定义如下迭代器:

?

template
  
   
class className
{
private:
         vector
   
    ::iteratoriter; };
   
  

?

则会出现如下图所示的错误:

?

\

?

?

这是由于:vector本身就是模板,在其模板参数未确定之前,也就是Type 的具体类型没有确定之前,这个Type是未知的。

?

解决方法如下:

?

template
  
   
class className
{
private:
         typename vector
   
    ::iterator iter; };
   
  

?

加上typename就是告诉编译器先不管具体类型,等模板实例化的时候再确定吧。

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇归并排序(MergeSort) 下一篇C++中 explicit 关键字

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·C 内存管理 | 菜鸟教 (2025-12-26 20:20:37)
·如何在 C 语言函数中 (2025-12-26 20:20:34)
·国际音标 [ç] (2025-12-26 20:20:31)
·微服务 Spring Boot (2025-12-26 18:20:10)
·如何调整 Redis 内存 (2025-12-26 18:20:07)