順序表 C 類模板實現

2022-03-04 07:13:38 字數 1540 閱讀 4570

#include

using namespace std;

#define ok 1

#define error 0

template

class linklist

int initlinklist(linklist < t > & l,int maxlistsize = 100);//初始化大小為100

int getlength(linklist < t > & l);

int getmaxsize(linklist < t > & l);

int destroylist(linklist < t > & l);

~linklist() //銷毀函式

;int clearlist(linklist < t > & l);

void showlist(linklist < t > & l);

bool getelem(linklist < t > & l , int i , t &e);//獲得第i個元素,e必須是t型別的,例如int e

t locateelem(linklist < t > & l , t & e);//找到e個元素的位置

t insertelem(linklist < t > & l , int i , t &e);//插入

int length;

int maxsize;

int *elem;

};template

int linklist::initlinklist( linklist &l,int maxlistsize)//建立新順式表

template

int linklist::getlength( linklist &l)

template

int linklist::getmaxsize( linklist &l)

template

int linklist::destroylist(linklist &l) //銷毀順式表

template

int linklist::clearlist(linklist < t > &l) //清空順式表

else

}template

void linklist ::showlist(linklist &l)

template

bool linklist ::getelem(linklist &l, int i ,t & e)

if(e = l.elem[i-1])

return true;

else return false;

}template

t linklist ::locateelem (linklist &l , t & e)

}return -1;

}template

t linklist::insertelem(linklist &l , int i , t & e)

l.elem[i-1] = e;

l.length ++;

return 1;

}int main()

C 模板實現順序表

pragma once include include include linearlist.h using namespace std const int defaultsize 100 templateclass seqlist public linearlist int size const ...

順序表C 模板實現

include using namespace std const int maxsize 20 template class sqlist template sqlist sqlist template sqlist sqlist template void sqlist creatlist t ...

模板實現順序表

模板就是實現與型別無關的 增加了 的復用性。模板分為模板函式和模板類 模板函式的格式typedef 返回型別 函式名 引數列表 class也可以用typename,意義相同。當需要資料大於所給定的資料時這時我們會考慮增容。void vector checkcapacity void test 我們再...