STL 陣列模板

2021-06-28 15:45:31 字數 1483 閱讀 6818

#pragma once

#include#includeusing namespace std;

template class myarray

;template int myarray::empty() //判斷是否為空

else }

template int myarray::full() //判斷是否為滿

else }

template void myarray::mypush_back(t key) //尾部插入

else }

template void myarray::myinsert(t key, t _val,char chr) //隨機插入

else

this->p[indx] = _val;

sn += 1;

}else

this->p[indx+1] = _val;

sn += 1;

}} else

}}template void myarray::delall() //清空

template int myarray::mysrea(t _val) //查詢

} return -1;

}template void myarray::myarraycat(int _val) //給陣列追加記憶體

free(this->p);

this->n += _val;

this->p = ptmp;

}template void myarray::mydel(int _index) //刪除某一元素 ,_index下標

sn -= 1; //實際元素個數

}template void myarray::myexchange(int _index,t & _val) //改變某一元素 ,_index 下標,_val 要修改的值

template myarray::myarray() :p(nullptr), n(0) //陣列為空

template void myarray::myswap(const myarray & s) //陣列相互交換

else }

}template int myarray::mysize() //返回元素個數

template t myarray::myat(const int & _index) //返回指定下標元素

template void myarray::myassign(const int & _val) //賦值

}template t myarray::operator (int n) //過載括號

template myarray::myarray(initializer_listmya) :n(size)

; int j = 0;

for (auto i : mya) }

template myarray::~myarray()

STL 類模板

1.模板 模板裡面也可以有非型別的引數,原則上只能是整數,而且是字面量 字面量在編譯時就確定下來。也可以有預設值 template stacks 一般的型別使用模板就可以搞定,特殊的型別就使用特化 想檢視實際替換時是什麼型別,這就需要執行時型別識別函式了typeid 最好不要把模板的宣告與定義分開,...

STL模板容器

min element 和max element 標頭檔案 include 作用 返回容器中最小值和最大值。max element first,end,cmp 其中cmp為可選擇引數 閒言少敘,上 一看就懂 cpp view plain copy include include using name...

STL常用模板

個人筆記,日後相忘 可能難以下嚥 include sort a,a n stable sort a,a n 穩定排序 reverse a,a n 反轉 陣列有序 unnique a,a n 去重 返回尾部指標,注意長度會變化 len unnique a,a n a 陣列有序 log n lower ...