程式:
#include
using
namespace std;
template
<
typename t,
int size>
class
seqlist
//初始化為空表
intlength()
const
//計算表長度
intfind
(t & x)
const
;//尋找x在表中位置(下標)
bool
isin
(t & x)
;//判斷x是否在表中
bool
insert
(t & x,
int i)
;//x插入到列表中第i個位置處(下標)
bool
remove
(t & x)
;//刪除x
intnext
(t & x)
;//尋找x的後繼位置
intprior
(t & x)
;//尋找x的前驅位置
bool
isempty()
//判斷表是否空
bool
isfull()
//判斷表是否滿
t get
(int i)
//取第i個元素之值
t&operator
(int i)
;//過載下標運算子};
template
<
typename t,
int size>
int seqlist
::find
(t & x)
const
template
<
typename t,
int size>
bool seqlist
::isin
(t & x)
return found;
}template
<
typename t,
int size>
bool seqlist
::insert
(t & x,
int i)
}template
<
typename t,
int size>
bool seqlist
::remove
(t & x)
return
false
;//表中不存在x
}template
<
typename t,
int size>
int seqlist
::next
(t & x)
template
<
typename t,
int size>
int seqlist
::prior
(t & x)
template
<
typename t,
int size> t& seqlist
::operator
(int i)
if(i>last) last++
;//下標運算子,只能增加表的元素,不能減少
return slist[i];}
intmain()
;for
(j=0
;j<
10;j++)if
(!seqlisti.
insert
(a[j]
,j))
j=seqlisti.
length()
;for
(i=0
;i) cout
<<
' ';
//列印出seqlisti.slist,即素數表
cout << endl ;
for(j=
0;j<
10;j++
) seqlisti[j]=0
;//採用下標運算子運算
for(j=
0;j<
10;j++
) cout<<<
' ';
cout
0;j<
10;j++
) seqlisti[j]
=a[j]
; seqlisti[10]
=31;//實驗能否增加元素
for(j=
0;j<
11;j++
) cout<<<
' ';
cout
(seqlisti.
isin
(k)) cout<<
"素數7在順序表中"
<< endl;
//因形參為引用,所以實參不可用整數常量7
else cout <<
"素數7不在順序表中"
(seqlisti.remove (k)
) cout<<
"刪除素數17"
/刪除素數17
else cout<<
"找不到素數17,無法刪除"
; j=seqlisti.
length()
;for
(i=0
;i) cout
<<
' ';
//列印剩下的素數
cout
insert
(k,j-1)
) cout<<
"列印17後乙個素數:"
next
(k))
"列印17前乙個素數:"
prior
(k))
"素數17在表中位置(下標)為:"
(k)
isempty()
) cout<<
"表是空的"
"表不空"
isfull()
) cout<<
"表是滿的"
"表也不滿"
isin
(k)) cout<<
"素數17在表中"
}
在此類模板中,存放順序表的陣列最多可放size個元素,11種操作由11個成員函式完成。 順序錶類模板
例6.3 順序錶類模板。include include using namespace std template class seqlist 初始化為空表 int length const 計算表長度 int find t x const 尋找x在表中位置 下標 bool isin t x 判斷x是...
順序錶類模板
include include using namespace std template class seqlist 初始化為空表 int length const 計算表長度 int find t x const 尋找x在表中位置 下標 bool isin t x 判斷x是否在表中 bool in...
C 模板類實現順序表
define crt secure no warnings include using namespace std include define length 10 typedef int datatype class vector 建構函式 有size個值為data的元素 vector size ...