原创 【c++ templates讀書筆記】【1】函數模板

1、定義函數模板: template<typename T> inline T const& Max(T const& a, T const& b){ return a < b ? b : a; } 解釋:template表明了這

原创 【c++ templates讀書筆記】【4】技巧性基礎知識

1、關鍵字typename 引入關鍵字typename是爲了說明:模板內部的標識符可以是一個類型。當某個依賴與模板參數的名稱是一個類型時,就應該使用typename。 template<T> class MyClass{ typena

原创 【線性表】順序表

SeqList.h #ifndef SEQLIST_H #define SEQLIST_H #include<iostream> const int default_size = 100; //SeqList template<typ

原创 【隊列】循環隊列

CircularQueue.h #ifndef CIRCULARQUEUE_H #define CIRCULARQUEUE_H int default_size = 10; #include<iostream> //CircularQ

原创 【線性表】靜態鏈表

StaticLinkedList.h #ifndef STATICLINKEDLIST_H #define STATICLINKEDLIST_H #include<iostream> const int max_size = 1000

原创 【棧,隊列】兩棧實現隊列

一、用STL中的stack實現 MyQueue.h #ifndef MYQUEUE_H #define MYQUEUE_h #include<iostream> #include<stack> //MyQueue template<ty

原创 【c++ templates讀書筆記】【3】非類型模板參數

對於函數模板和類模板,模板參數並不侷限於類型,普通值也可以作爲模板參數。但非類型模板參數是有限制的,只能是常整數(包括枚舉值)或者指向外部鏈接對象的指針,浮點數、類對象和內部鏈接對象不允許作爲非類型模板參數的。 1、非類型類模板參數例子

原创 【棧】兩棧共享空間

SeqDoubleStack.h #ifndef SEQDOUBLESTACK_H #define SEQDOUBLESTACK_H #include<iostream> int default_size = 20; // SeqDou

原创 將Vim改造爲強大的IDE—Vim集成Ctags/Taglist/Cscope/Winmanager/NERDTree/OmniCppComplete(有圖有真相)

轉自http://blog.csdn.net/bokee/article/details/6633193 工欲善其事,必先利其器。一個強大的開發環境可以大大提高工作效率。好吧,我知道這是廢話。。。不過,我想一定有很多跟我一樣打算進入L

原创 【線性表】單鏈表

SingleLinkedList.h #ifndef SINGLELINKEDLIST_H #define SINGLELINKEDLIST_H #include<iostream> //list node template<typen

原创 【c++ templates讀書筆記】【7】模板元編程

模板實例化機制是一種基本的遞歸語言機制,可以用於在編譯期執行復雜的計算。這種隨着模板實例化所出現的編譯器計算通常被稱爲template metaprogramming。 例子一,計算階乘: //Pow.h #ifndef POW_H #

原创 【棧】順序棧

SeqStack.h #ifndef SEQSTACK_H #define SEQSTACK_H #include<iostream> int default_size = 20; // SeqStack template<typena

原创 【棧】鏈式棧

LinkedStack.h #ifndef LINKEDSTACK_H #define LINKEDSTACK_H #include<iostream> //Stack node template<typename T> struct

原创 【隊列】鏈式隊列

LinkedQueue.h #ifndef LINKEDQUEUE_H #define LINKEDQUEUE_h #include<iostream> //queue node template<typename T> struct

原创 【c++ templates讀書筆記】【5】模板實戰

1、模板聲明和模板定義如果不在同一個文件中,在另一個文件中使用模板時會出現鏈接錯誤。 例子: //Myfirst.h #ifndef MYFIRST_H #define MYFIRST_H #include<iostream> #inc