C++STL(標準ライブラリ)

2495 ワード

標準テンプレートライブラリ(STL)は、膨大なサブセットの80%を占めるC++標準関数ライブラリのサブセットです.標準の入出力、文字列、コンテナ、数値演算、および非数値演算のサポートを提供します.
C標準関数ライブラリ、I/Oストリーム、String、(コンテナ、アルゴリズム)STL、診断サポートを含む.
C++規格では、STLは、の13個のヘッダファイルに編成される
#include<vector>
#include<iostream>
using namespace std;
int main( )
{
   vector<double> a;
   vector<double>:: const_iterator i;//iterator
   a.push_back(1);
   a.push_back(2);
   a.push_back(3);
   a.push_back(4);
   for(i = a.begin();i!=a.end();i++)
      cout<<(*i)<<endl;
   return 0;
}
#include <cstdlib>
#include <iostream>
#include <vector>
#include <algrithm>
using namespace std;

template<class T>
struct Print
{
   void operator()(T& x)const//      
   {
      if(x%2==0){
         cout<<x<<' ';
       }
    }
};

int main(int argc, char *argv[])
{
    vector<int> vcInts;//     vector  
    for(int i=0;i<10;i++){
        vcInts.push_back(i);
    }
    vector<int>::iterator iterBegin, iterEnd;
    iterEnd = vcInts.end();
    for(iterBegin = vcInts.begin();iterBgin!= iterEnd;iterBegin++)
    {
        cout<<*iterBegin<<' ';
     }
    iterBegin = vcInts.begin();
    for_each(iterBegin,iterEnd,Print<int>());//    for_each     Print        
    cout<<end;
    system("pause");
    return 0;
}
#include<iostream>
#include<algorithm>//      
#include<functional>
#include<vector>
using namespace std;
class myclass{
    public:
       myclass(int a,int b):first(a),second(b){};//    
       int first;
       int second;
       bool operator< (const myclass &m)const//const       
       {    
           return first<m.first;
        }
};
bool less_second(const myclass& m1,const myclass & m2)
{
   return m1.second<m2.second;
}
int main()
{