在上一篇文章中,介绍了C++中模板类继承的实现。本文补充介绍如何从C++模板类中派生出一个普通类,或者说实现一个普通类A,继承至一个模板类B。
1.实现List基类(模板类)
#ifndef LIST_H
#define LIST_H
#include <iostream>
using std::cout;
using std::endl;
enum Error_code { underflow, overflow, range_error, success, not_present,fail};
const int max_list = 100;
template <class List_entry>
class List
{
// methods of List ADT
public:
List();
int size() const;
bool full() const;
bool empty() const;
void clear();
void traverse(void(*vist)(List_entry&)); // Traverse every elements in the List
Error_code retrieve(int position, List_entry &x) const;
Error_code replace(int position, const List_entry& x);
Error_code remove(int positio