首先介紹模板函式:顧名思義,就是乙個模板讓別的事物套用的,c++中的模板就是同一結構的不同型別套用的,舉個簡單例子,要使用這個結構的模板,int可以用,char也可以用,等等
好了不羅嗦了,直接上實現函式吧!
模板結構如下:
template//模板函式,t為引數型別
class seqlist
;
建構函式、賦值運算子過載函式:
templateseqlist::seqlist()
:_array(null),
_size(0),
_capaci(0)
{}templateseqlist::seqlist(t *array, size_t size)
: _array(new t[size]),
_size(size),
_capaci(size)
}//template//seqlist::seqlist(const seqlist& s) //傳統寫法
// :_array(new t[s._size]),
// _size(s._size),
// _capaci(s._size)
////}
templateseqlist::seqlist(const seqlist &s) //現**法
:_array(null)
templateseqlist& seqlist::operator=(seqlist s)
//template//seqlist& seqlist::operator=(const seqlist s)
//// return *this;
//}
析構函式:
templateseqlist::~seqlist()
}
插入刪除函式:
templatevoid seqlist::pushback(const t& x)
templatevoid seqlist::popback()
}templatevoid seqlist::pushfount(const t& x)
_array[0] = x;
_size++;
}templatevoid seqlist::popfount()
for (size_t i = 0; i
_size--;
}templatevoid seqlist::insert(size_t pos, const t& x)
_array[pos - 1] = x;
_size++;
}templatevoid seqlist::erase(size_t pos)
for (int i = pos; i
_size--;
}
尋找值的函式、輸出內容函式:
templateint seqlist::find(t x)
for (int i = 0; i
return -1;
}templatevoid seqlist::printseqlist()
檢查容量和增容函式:
templatevoid seqlist::_cheekcapacity()
}
上述**全部定義於我自定義的typetemp.h標頭檔案中,並寫在#ifndef _typetemp_h__ #define _typetemp_h__ 和 #endif之間
測試函式如下:
#include"seqlist.h"
void test2()
void test3()
void test4()
int main()
執行函式,檢視結果:
本文出自 「分享中進步」 部落格,請務必保留此出處
寶哥教你 檢視jquery繫結的事件函式
原文出處 作為技術狂熱分子的職業本能,看到乙個技術產品的功能,總會忍不住想知道它是怎麼被實現的。比如我每每看到別人 乙個很炫的介面或者很酷的功能,就忍不住開啟了瀏覽器的控制台。好,不扯遠,說說當你想看到 上某個元素繫結的事件函式的 時應該怎麼做吧。所謂原生就是通過addeventlistener方法...
小白教你學習C (5)函式模板的使用
小白教你學習c 5 函式模板的使用 為什麼需要函式模板?也就是說如果你想要乙個函式處理的功能相同,只是函式的餐宿型別不同那麼,你是否要寫兩個函式呢?這樣的話是不是很浪費時間!int myswap int a,b int c 0 c a a b b c void main int d 10 int e...
C 函式模板使用
一.函式模板的使用 什麼是函式模板 就是建立乙個通用函式,其函式型別和形參型別不具體指定,用乙個虛擬的型別來代表,在個通用函式就稱為函式模板。函式模板的定義 格式 函式模板由三個部分組成 模板說明 函式定義 函式模板呼叫 1 模板說明 template 型別形式參數列 型別形式參數列 typenam...