C++作业

利用模板类完成顺序表

#include 

using namespace std;
#define MAX 20
template 
class Sql
{
private:
    T *head=NULL;
    int len=0;

public:
    //无参构造
    Sql():head(new T){}
    //有参构造
    Sql(T head,int len):head(new T(head)),len(len){}
    //析构函数
    ~Sql(){delete head;}
    //顺序表尾插
    void insert_data(Sql &s1,T head);
    //遍历
    void output(Sql s1);


};
//尾插
template 
void Sql::insert_data(Sql &s1,T a)
{
    if(s1.len==MAX||nullptr==head)
    {
        return;
    }
    //尾插数据
    *(s1.head+s1.len)=a;
    s1.len++;
}
//遍历
template 
void Sql::output(Sql s1)
{
    //判空
    if(s1.len==0)
    {
        return;
    }
    for (int i=0;i s1;//向堆区申请空间
    cout<<"头插数据:"<

C++作业_第1张图片

你可能感兴趣的:(c++,开发语言)