簡介
STL的代碼從廣義上講分為三類:algorithm(算法)、container(容器)和iterator(疊代器),幾乎所有的代碼都採用了模板類和模板函式的方式,這相比於傳統的由函式和類組成的庫來說提供了更好的代碼重用機會。在C++標準中,STL被組織為下面的13個頭檔案:<algorithm>、<deque>、<functional>、<iterator>、<vector>、<list>、<map>、<memory>、<numeric>、<queue>、<set>、<stack>和<utility>。
Stepanov想像中的函式模版
in*.hpp
template<classT>
Tsquare(Tx){returnx*x;}
in*.cpp
doublesquare(double);
cout<<square(3.3);
intsquare(int);
cout<<square(3);
Bjarne認為的函式模版
in*.hpp
template<classT>
Tsquare(Tx){returnx*x;}
in*.cpp
cout<<square(3.3);
cout<<square(3);