1.泛型程式設計
在c++中,模板是泛型程式設計的基礎。
下面有乙個stl初體驗的**
#include
#include
#include
#include
#include
#include
using namespace std;
/* 自定義函式物件*/
template
class square
};int test(int n)
int main()
transform(s.begin(), s.end(), ostream_iterator(cout, " "), square());
cout << endl;
system("pause");
return 0; }
這段**實現的就是輸入5個數,然後依次輸出它們的平方。
/*
容器:容納包含一組元素的物件,支援線性 可分為 順序容器(vector deque list stack) 關聯容器 set multiset map multimap
迭代器:順序訪問容易每個元素的方法 類似指標
函式物件:行為類似函式的物件 呼叫函式一樣去吊用 泛化以後的函式
演算法:stl提供的大量具有統一性的演算法,可廣泛用於不同的物件和內建的資料型別
transform:將 begin - end 用negate函式變換為新的序列 並通過輸出迭代器所指定的物件輸出
分析示例圖:
演算法是核心 迭代器是演算法的引數 通過迭代器訪問容器
把函式物件作為演算法的引數
體現出:靈活性
*/迭代器是容器和演算法的中間人。
迭代器對儲存在容器中的元素序列進行遍歷,提供了容器中訪問每種元素的方法。
迭代器是泛化的指標,提供了類似指標的方法(諸如++,*,->運算子)。
迭代器不僅僅是指標,迭代器更加抽象,可以指向容器中每個元素的位置,而不必關心這個位置對應的真正的實體地址。
輸出迭代器(input iterator),輸入迭代器(output iterator),前向迭代器(forward iterator),雙向迭代器(bidirectional iterator),隨機訪問迭代器(random access iterator)。
C STL標準模板庫
stl共有6中元件 容器 容器介面卡 迭代器 演算法 函式物件 仿函式 和函式介面卡。最常用的是順序容器,順序容器內的元素按其位置進行儲存和訪問。除順序容器外,標準庫還定義了幾種關聯容器。這裡我們主要講一下順序容器。標準庫定義了三種順序容器型別 vector list和deque,它們的差別在於訪問...
c STL(標準模板庫)
c stl 標準模板庫 是一套功能強大的 c 模板類,提供了通用的模板類和函式,這些模板類和函式可以實現多種流行和常用的演算法和資料結構,如向量 鍊錶 佇列 棧。元件描述 容器 containers 容器是用來管理某一類物件的集合。c 提供了各種不同型別的容器,比如 deque list vecto...
C STL(標準模板庫)筆記
c stl 標準模板庫 是一套功能強大的 c 模板類,提供了通用的模板類和函式,這些模板類和函式可以實現多種流行和常用的演算法和資料結構,如向量 鍊錶 佇列 棧。c 標準模板庫的核心包括以下三個元件 示例 include include using namespace std int main 顯示...