zoukankan      html  css  js  c++  java
  • 第十九章 8链表类Node 简单

    // 8 链表类Node
    //为了这个数据类Date以后,接下来还需要一个链表类Node,该类拥有一个插入函数insert和一个输出函数print,由于插入新节点和输出节点的数据这两个或能是所有链表类必备的,所以将它们声明为虚函数,以提醒它的子类必须实现这两个虚函数的功能
    /*
    #include <iostream>
    using namespace std;
    //定认枚举形常量
    enum{small,large, same};
    class Date
    {
    public:
    	Date(int i):date(i){}
    	~Date(){}
    	int compare(const Date&);
    private:
    	int date;
    };
    
    int Date::compare(const Date& two)
    {
    	if(date < two.date)
    	     return small;
    	if(date > two.date){
    	     return large;
    	}else{
    	    return same;
    	}
    }
    
    //链表类
    class Node
    {
    public:
    	Node(){}
    	virtual ~Node(){}
    	virtual Node* insert(Date *one) = 0;
    	//只有拥有一个线纯虚函数的类就是抽像类,所以说Node类是一个抽像类
        virtual void print() = 0;
    private:
    };
    //该类是个抽像类,它的所有成员都是公有的,可以被其他类访问,因此访我的可看作是一个接口,访我的有两个纯虚函数insert()的print(),这两个函数必须在子类中实现功能后才能使用
    //目前这个Node类什么也作用也没有,仅仅为它的子类提供了两个未定义好的函数,它要求子类再去定义这些函数
    
    //打个比方,有个抽像类是人类,它有一个方法是上课
    //两个类从这个抽像类中派生而出,一个是老师类,一个学生类
    //在这种情况下人类就没有必要胚体化上课的细节了,因为老师和学生的上课方式是各自不同的
    //人类的作用只是告诉只要是人类就能够上课,假如是动物,当然就不能上课了,符合人类的条件需要几个功能,上课只是其中之一
    //我们这里定义链表类Node也是这个目前的,只要是链表就拥有插入新节点的输出节点的数据这两个功能,这两个功能是必须实现的,所以Node类声明了这两个功能,功能由它子类去实现,能够实现的方才是链表,不能实现的就不是链表
    
    
    int main()
    {
        return 0;
    }*/
    

      

  • 相关阅读:
    1.造一个句子先造出 主谓宾 或主系表,或therebe 这个句子就确定了
    电脑族应每天赤脚走15分钟
    10我操介词
    2.在英语句子中,什么时候用助动词do\does ,什么时候用be动词am\is\are?
    6.英语单词末尾的——s,什么时候发S,什么时候发Z
    转 Dll创建一个"日历"窗体(一)
    2012 MultiUniversity Training Contest 2
    最大流 基础
    HDOJ 4006 The kth great number(优先队列)
    树状数组
  • 原文地址:https://www.cnblogs.com/xiangxiaodong/p/2709102.html
Copyright © 2011-2022 走看看