collection_concept.hpp
来自「CGAL is a collaborative effort of severa」· HPP 代码 · 共 63 行
HPP
63 行
// Copyright 2002 The Trustees of Indiana University.// Use, modification and distribution is subject to the Boost Software // License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at// http://www.boost.org/LICENSE_1_0.txt)// Boost.MultiArray Library// Authors: Ronald Garcia// Jeremy Siek// Andrew Lumsdaine// See http://www.boost.org/libs/multi_array for documentation.#ifndef COLLECTION_CONCEPT_RG103101_HPP#define COLLECTION_CONCEPT_RG103101_HPP#include "boost/concept_check.hpp"namespace boost {namespace detail {namespace multi_array { //=========================================================================== // Collection Concept template <class Collection> struct CollectionConcept { typedef typename Collection::value_type value_type; typedef typename Collection::iterator iterator; typedef typename Collection::const_iterator const_iterator; typedef typename Collection::reference reference; typedef typename Collection::const_reference const_reference; // typedef typename Collection::pointer pointer; typedef typename Collection::difference_type difference_type; typedef typename Collection::size_type size_type; void constraints() { boost::function_requires<boost::InputIteratorConcept<iterator> >(); boost::function_requires<boost::InputIteratorConcept<const_iterator> >(); boost::function_requires<boost::CopyConstructibleConcept<value_type> >(); const_constraints(c); i = c.begin(); i = c.end(); c.swap(c); } void const_constraints(const Collection& c) { ci = c.begin(); ci = c.end(); n = c.size(); b = c.empty(); } Collection c; bool b; iterator i; const_iterator ci; size_type n; };}}}#endif // COLLECTION_CONCEPT_RG103101_HPP
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?