⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 concept.hpp

📁 Boost provides free peer-reviewed portable C++ source libraries. We emphasize libraries that work
💻 HPP
字号:
//  Boost string_algo library concept.hpp header file  ---------------------------////  Copyright Pavol Droba 2002-2003.//// Distributed under 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)//  See http://www.boost.org/ for updates, documentation, and revision history.#ifndef BOOST_STRING_CONCEPT_HPP#define BOOST_STRING_CONCEPT_HPP#include <boost/concept_check.hpp>#include <boost/range/iterator_range.hpp>#include <boost/range/begin.hpp>#include <boost/range/end.hpp>/*! \file     Defines concepts used in string_algo library*/namespace boost {    namespace algorithm {        //! Finder concept        /*!            Defines the Finder concept. Finder is a functor which selects            an arbitrary part of a string. Search is performed on            the range specified by starting and ending iterators.            Result of the find operation must be convertible to iterator_range.        */        template<typename FinderT, typename IteratorT>        struct FinderConcept        {        private:            typedef iterator_range<IteratorT> range;        public:            void constraints()            {                // Operation                r=(*pF)(i,i);            }        private:            range r;            IteratorT i;            FinderT* pF;            }; // Finder_concept                //! Formatter concept        /*!            Defines the Formatter concept. Formatter is a functor, which            takes a result from a finder operation and transforms it            in a specific way.            Result must be a container supported by container_traits,             or a reference to it.        */        template<typename FormatterT, typename FinderT, typename IteratorT>        struct FormatterConcept        {        public:            void constraints()            {                // Operation                ::boost::begin((*pFo)( (*pF)(i,i) ));                ::boost::end((*pFo)( (*pF)(i,i) ));            }        private:            IteratorT i;            FinderT* pF;            FormatterT *pFo;        }; // FormatterConcept;    } // namespace algorithm} // namespace boost#endif  // BOOST_STRING_CONCEPT_HPP

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -