在這裡我們用模板引數和模板的模板引數完成介面卡棧和佇列。
之前寫過棧和佇列,以及 vector 與 list 的的內容。
在這裡我們直接使用vector作為模板的模板引數完成介面卡棧,
用list作為模板的模板引數完成介面卡佇列。
介面卡棧:
template
t,class
container = list
>
class
queue
void push
(const
t&t)
void pop
() size_t size
()
bool empty
()
ttop()
private:
container _front;
};
介面卡佇列:
template
t,class
container = list
>
class
queue
void push
(const
t&t)
void pop
() size_t size
()
bool empty
()
ttop()
private:
container _front;
};
容器介面卡(棧容器介面卡 佇列容器介面卡)
我們已有的容器 比如vector list 這個容器支援的操作很多,比如插入,刪除,迭代器訪問等等。而我們希望這個容器表現出來的是棧的樣子 先進後出,入棧出棧等等,此時,我們沒有必要重新動手寫乙個新的資料結構,而是把原來的容器重新封裝一下,改變它的介面,就能把它當做棧使用了。c 定義了三種容器介面卡...
介面卡,棧和佇列
1.利用棧反向輸出單詞 include include include include using namespace std int main cout endl return 0 執行結果 2.優先順序佇列 一種細胞在誕生 即上次 後會在500到2000秒內 為兩個細胞,每個細胞又按照同樣的規律...
容器介面卡 什麼是容器介面卡和用法
就是由基本的容器適配 改造 出來的那些容器,其它沒啥特殊的。比如stack,因為我們可以把stack理解成只是對vector deque或list的訪問加一點限制而已 只能從頭部訪問 所以沒有必要把stack做成乙個基本容器,使用其它的基本容器再稍微封裝改造一下就ok了,所以stack在stl中就只...