64,682
社区成员
发帖
与我相关
我的任务
分享
#ifndef LINKEDLIST_H
#define LINKEDLIST_H
#include <iostream>
using std::cout;
using std::cin;
using std::endl;
template < class Type >
class LinkedList
{
public:
LinkedList();
~LinkedList();
void insert(const Type &item, int);
void remove();
Type retrieve() const;
int gotoPrior();
int gotoNext();
int gotoBeginning();
void clear();
int empty() const;
LinkedList(const LinkedList &src);
protected:
class ListElement
{
public:
ListElement(const Type &item, ListElement* nextP):
element(item), next(nextP) {}
Type element;
ListElement* next;
};
ListElement *head;
ListElement *cursor;
};
#endif
#ifndef MEMO_H
#define MEMO_H
class Memo
{
public:
Memo();
const char * getTime();
const char * getTitle();
void setTime(const char *stime);
void setTitle(const char *stitle);
int getKey();
private:
char time[6];
char title[41];
};
#endif
#ifndef ORDLIST_H
#define ORDLIST_H
#include "linkedlist.cpp"
template <class Type, class Key>
class OrdList : public LinkedList<Type>//Inheritance
{
public:
OrdList();
~OrdList();
void insert(Type& item);
void merge(const OrdList<Type,Key> other_list);
int search(Key search_key);
};
#endif
#ifndef SCHEDULER_H
#define SCHEDULER_H
#include "Memo.h"
#include "OrdList.cpp"
class Scheduler
{
public:
Scheduler();
void copyConstTest();
void insertMemo(Memo newMemo);
void deleteMemo(char *time);
void readMemos(char filename[]);
void writeMemos(char filename[]);
void displayMemos();
void mergeMemos(char filename[]);
void clearMemos();
private:
OrdList<Memo, int> memos;
};
#endif
#ifndef INTERFACE_H
#define INTERFACE_H
#include "Scheduler.h"
class Interface
{
public:
Interface ();
void getCommand ();
void executeCommand ();
int done ();//返回finished值
private:
Scheduler scheduler;
char command;
int finished;
};
#endif