LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1270|回复: 3

c++类模板的一个问题。

[复制链接]
发表于 2005-11-3 16:37:48 | 显示全部楼层 |阅读模式
我自己新建了一个类为Array,在Array.h文件中我是这样声明的:
#include <iostream>

template <class elemType> class Array
{
public:
      --------
      --------
        virtual elemType& operator [] (int index);//重载 [] 操作符
private:
     --------
     --------
}

在cpp文件中我是这样定义重载 [] 操作符函数的:
template <class elemType>
elemType & Array <class elemType>:perator [] (int index)
{
       
}

可是编译器提示cpp文件中的重载 [] 操作符函数有问题,说是:
“error: using typedef-name `elemType' after `class'“”

请问这是什么原因,问题出在哪里呢?请知道的朋友教教我1
谢谢回复!
发表于 2005-11-3 17:33:02 | 显示全部楼层
Post by jiandaoxu

elemType & Array <class elemType>:perator [] (int index)
{
       
}



应为

  1. elemType & Array <elemType>::operator [] (int index)
  2. {
  3.        
  4. }
复制代码


btw:读书要仔细
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-11-3 22:08:46 | 显示全部楼层
呀!!
让版主见笑了!

真是的,学习中过于急攻进利了。
回复 支持 反对

使用道具 举报

发表于 2005-11-19 16:18:29 | 显示全部楼层
而且定义和声明都要在头文件哦用template的话。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表