| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 666 人关注过本帖
标题:顺序表的类模板,有两个类型形参,请问有必要吗?
只看楼主 加入收藏
judy0608
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2013-3-8
结帖率:0
收藏
已结贴  问题点数:20 回复次数:3 
顺序表的类模板,有两个类型形参,请问有必要吗?
殷人昆《数据结构》,顺序表的类模板,有两个类型形参,请问有必要吗?请高人指点,不胜感激!


template <class T, class E>
class LinearList {
public:
    LinearList(); //构造函数
   ~LinearList(); //析构函数
    virtual int Size() const = 0; //求表最大体积
    virtual int Length() const = 0; //求表长度
    virtual int Search(T x) const = 0;         //搜索
    virtual int Locate(int i) const = 0;        //定位
    virtual E* getData(int i) const = 0;       //取值
    virtual void setData(int i, E x) = 0;       //赋值     
    virtual bool Insert(int i, E x) = 0;                //插入
    virtual bool Remove(int i, E& x) = 0;   //删除
    virtual bool IsEmpty() const = 0;             //判表空
    virtual bool IsFull() const = 0;   //判表满
    virtual void Sort() = 0;   //排序
    virtual void input() = 0;   //输入
    virtual void output() = 0;   //输出
    virtual LinearList<T, E>operator=
    (LinearList<T, E>& L) = 0;   //复制
};
搜索更多相关主题的帖子: 不胜感激 public 
2013-03-08 09:32
yuccn
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:何方
等 级:版主
威 望:167
帖 子:6815
专家分:42393
注 册:2010-12-16
收藏
得分:10 
看设计吧。作者这样写可能有他的原因,没有看过那书,不明真相。。

我行我乐
公众号:逻辑客栈
我的博客:
https://blog.yuccn. net
2013-03-08 16:36
judy0608
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2013-3-8
收藏
得分:0 
以下是引用yuccn在2013-3-8 16:36:29的发言:

看设计吧。作者这样写可能有他的原因,没有看过那书,不明真相。。

谢谢!

在其他论坛得到的解答是这样的:
E 相当于 value
T 相当于 key

这段代码它想要实现的是 一个用T作为搜索关键字的E的容器的基类

只不过我们一般不这样设计
1、要搜索的话一般用树,不用线性结构;要用线性结构,就一般不提供搜索,只提供遍历

2、输入输出,这种功能一般不会作为类成员,容器的输入应该就是insert,容器的输出应该就是查找、遍历

3、排序,实际开发当中,我们一般不会花大力气开发一个高效的排序算法,如果一组数据有排序的需求,我们通常更倾向于让这组数据在放入容器的时候就有序,而不是等逻辑需要有序的时候再去排序

举个简单的例子
template< class string, class char >
2013-03-08 17:52
不玩虚的
Rank: 9Rank: 9Rank: 9
来 自:四川
等 级:贵宾
威 望:10
帖 子:331
专家分:1301
注 册:2012-12-9
收藏
得分:10 
觉得没必要,你用一个试试,应该没问题。

同学习......同进步....你帮我......我帮你.....上善若水.....
2013-03-09 23:24
快速回复:顺序表的类模板,有两个类型形参,请问有必要吗?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.021183 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved