Boost provides free peer-reviewed portable C++ source libraries.
We emphasize libraries that work
源代码在线查看: copy.rst
.. Algorithms/Transformation Algorithms//copy |10 .. Copyright Aleksey Gurtovoy, David Abrahams 2007. .. 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) copy ==== Synopsis -------- .. parsed-literal:: template typename Sequence , typename In = |unspecified| > struct copy { typedef |unspecified| type; }; Description ----------- Returns a copy of the original sequence. |transformation algorithm disclaimer| Header ------ .. parsed-literal:: #include Model of -------- |Reversible Algorithm| Parameters ---------- +---------------+---------------------------+-------------------------------+ | Parameter | Requirement | Description | +===============+===========================+===============================+ | ``Sequence`` | |Forward Sequence| | A sequence to copy. | +---------------+---------------------------+-------------------------------+ | ``In`` | |Inserter| | An inserter. | +---------------+---------------------------+-------------------------------+ Expression semantics -------------------- |Semantics disclaimer...| |Reversible Algorithm|. For any |Forward Sequence| ``s``, and an |Inserter| ``in``: .. parsed-literal:: typedef copy::type r; :Return type: A type. :Semantics: Equivalent to .. parsed-literal:: typedef fold< s,in::state,in::operation >::type r; Complexity ---------- Linear. Exactly ``size::value`` applications of ``in::operation``. Example ------- .. parsed-literal:: typedef vector_c numbers; typedef copy range_c , back_inserter< numbers > >::type result; BOOST_MPL_ASSERT_RELATION( size::value, ==, 20 ); BOOST_MPL_ASSERT(( equal< result,range_c > )); See also -------- |Transformation Algorithms|, |Reversible Algorithm|, |reverse_copy|, |copy_if|, |transform|