C++0xからConceptが導入されますが、現在のC++でも使えるConceptを作ってみました とりあえずContainerコンセプトだけです Containerコンセプトを使えば、コンテナと配列を同じように扱うことができます namespace concept { template <class T> struct identity { typedef T type; }; template <class Container> struct container { typedef Container type; typedef typename Container::value_type value_type; typedef typename Container::reference reference; typedef typename Container::const_refe