亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? algorithm

?? realview22.rar
??
?? 第 1 頁 / 共 4 頁
字號:
// -*- C++ -*-
/***************************************************************************
 *
 * algorithm - declarations and inline definitions of the Standard
 *              Library algorithms
 *
 * $Id: algorithm,v 1.1.1.1 2002/01/10 17:38:29 vkorstan Exp $
 *
 ***************************************************************************
 *
 * Copyright (c) 1994
 * Hewlett-Packard Company
 *
 * Permission to use, copy, modify, distribute and sell this software
 * and its documentation for any purpose is hereby granted without fee,
 * provided that the above copyright notice appear in all copies and
 * that both that copyright notice and this permission notice appear
 * in supporting documentation.  Hewlett-Packard Company makes no
 * representations about the suitability of this software for any
 * purpose.  It is provided "as is" without express or implied warranty.
 *
 ***************************************************************************
 *
 * Copyright (c) 1994-2001 Rogue Wave Software, Inc.  All Rights Reserved.
 *
 * This computer software is owned by Rogue Wave Software, Inc. and is
 * protected by U.S. copyright laws and other laws and by international
 * treaties.  This computer software is furnished by Rogue Wave Software,
 * Inc. pursuant to a written license agreement and may be used, copied,
 * transmitted, and stored only in accordance with the terms of such
 * license and with the inclusion of the above copyright notice.  This
 * computer software or any other copies thereof may not be provided or
 * otherwise made available to any other person.
 *
 * U.S. Government Restricted Rights.  This computer software is provided
 * with Restricted Rights.  Use, duplication, or disclosure by the
 * Government is subject to restrictions as set forth in subparagraph (c)
 * (1) (ii) of The Rights in Technical Data and Computer Software clause
 * at DFARS 252.227-7013 or subparagraphs (c) (1) and (2) of the
 * Commercial Computer Software--Restricted Rights at 48 CFR 52.227-19,
 * as applicable.  Manufacturer is Rogue Wave Software, Inc., 5500
 * Flatiron Parkway, Boulder, Colorado 80301 USA.
 *
 **************************************************************************/

#ifndef _RWSTD_ALGORITHM_INCLUDED
#define _RWSTD_ALGORITHM_INCLUDED

#include <memory>
#include <utility>

#include <rw/_iterbase.h>
#include <rw/_algobase.h>
#include <rw/_defs.h>

#include _RWSTD_CSTDLIB


#ifdef _INLINE_RECURSIVE
#  define _INLINE inline
#else
#  define _INLINE
#endif


_RWSTD_NAMESPACE_BEGIN (std)


// 25.1 - Non-modifying sequence operations [lib.alg.nonmodifying]

// 25.1.1 - For Each [lib.alg.foreach]
template <class _InputIter, class _Function>
inline _Function
for_each (_InputIter __first, _InputIter __last, _Function __f)
{
    _RWSTD_ASSERT_RANGE (__first, __last);

    for (;__first != __last; ++__first)
        __f (*__first);
    return __f;
}


// 25.1.2 - Find [lib.alg.find]

template <class _InputIter, class _TypeT>
inline _InputIter
find (_InputIter __first, _InputIter __last, const _TypeT& __value)
{
    _RWSTD_ASSERT_RANGE (__first, __last);

    while (!(__first == __last) && !(*__first == __value)) 
        ++__first;
    return __first;
}


template <class _InputIter, class _Predicate>
inline _InputIter
find_if (_InputIter __first, _InputIter __last, _Predicate __pred)
{
    _RWSTD_ASSERT_RANGE (__first, __last);

    while (__first != __last && !__pred (*__first))
        ++__first;
    return __first;
}


// helpers to work around the lack of iterator_traits
template <class _FwdIter1, class _FwdIter2, class _Distance>
_FwdIter1 __find_end (_FwdIter1, _FwdIter1, _FwdIter2, _FwdIter2, _Distance*);

template <class _FwdIter1, class _FwdIter2, 
          class _BinaryPredicate, class _Distance>
_FwdIter1 __find_end (_FwdIter1, _FwdIter1, _FwdIter2, _FwdIter2,
                      _BinaryPredicate, _Distance*);


// 25.1.3 - Find End [lib.alg.find.end]

template <class _FwdIter1, class _FwdIter2>
inline _FwdIter1 find_end (_FwdIter1 __first1, _FwdIter1 __last1,
                           _FwdIter2 __first2, _FwdIter2 __last2)
{
    _RWSTD_ASSERT_RANGE (__first1, __last1);
    _RWSTD_ASSERT_RANGE (__first2, __last2);

    return __find_end (__first1, __last1, __first2, __last2,
                       _RWSTD_DIFFERENCE_TYPE (_FwdIter1));
}


template <class _FwdIter1, class _FwdIter2, class _BinaryPredicate>
_FwdIter1 find_end (_FwdIter1 __first1, _FwdIter1 __last1,
                    _FwdIter2 __first2, _FwdIter2 __last2,
                    _BinaryPredicate __pred)
{
    _RWSTD_ASSERT_RANGE (__first1, __last1);
    _RWSTD_ASSERT_RANGE (__first2, __last2);

    return __find_end (__first1,__last1,__first2,__last2,
                       __pred, _RWSTD_DIFFERENCE_TYPE (_FwdIter1));
}

// 25.1.4 - Find First [lib.alg.find.first.of]

template <class _FwdIter1, class _FwdIter2>
_FwdIter1 find_first_of (_FwdIter1, _FwdIter1, _FwdIter2, _FwdIter2);

template <class _FwdIter1, class _FwdIter2, class _BinaryPred>
_FwdIter1 find_first_of (_FwdIter1,_FwdIter1, _FwdIter2, _FwdIter2,
                         _BinaryPred);


// 25.1.5 - Adjacent Find [lib.alg.adjacent.find]

template <class _FwdIter>
_FwdIter adjacent_find (_FwdIter, _FwdIter);

template <class _FwdIter, class _BinaryPredicate>
_FwdIter adjacent_find (_FwdIter, _FwdIter, _BinaryPredicate);


#ifndef _RWSTD_NO_CLASS_PARTIAL_SPEC

// 25.1.6 - Count [lib.alg.count]

template <class _InputIter, class _TypeT>
inline _TYPENAME iterator_traits<_InputIter>::difference_type
count (_InputIter __first, _InputIter __last, const _TypeT& __value)
{
    _RWSTD_ASSERT_RANGE (__first, __last);

    _TYPENAME iterator_traits<_InputIter>::difference_type __n = 0;
    for (; __first != __last; ++__first)
        if (*__first == __value)
            ++__n;
    return __n;
}


template <class _InputIter, class _Predicate>
inline _TYPENAME iterator_traits<_InputIter>::difference_type
count_if (_InputIter __first, _InputIter __last, _Predicate __pred)
{
    _RWSTD_ASSERT_RANGE (__first, __last);

    _TYPENAME iterator_traits<_InputIter>::difference_type __n = 0;
    for (;__first != __last; ++__first)
        if (__pred (*__first))
            ++__n;
    return __n;
}

#endif   // _RWSTD_NO_CLASS_PARTIAL_SPEC


// provided as a backward-compatibility extension (or as a workaround)
#if    !defined (_RWSTD_NO_EXT_VOID_COUNT)    \
    || defined (_RWSTD_NO_CLASS_PARTIAL_SPEC)

template <class _InputIter, class _TypeT, class _Size>
inline void count (_InputIter __first, _InputIter __last,
                   const _TypeT& __value, _Size& __n)
{
    _RWSTD_ASSERT_RANGE (__first, __last);

    for (;__first != __last;++__first) 
        if (*__first == __value)
            ++__n;
}


template <class _InputIter, class _Predicate, class _Size>
inline void count_if (_InputIter __first, _InputIter __last,
                      _Predicate __pred, _Size& __n)
{
    _RWSTD_ASSERT_RANGE (__first, __last);

    for (;__first != __last;++__first)
        if (__pred (*__first))
            ++__n;
}

#endif   // !_RWSTD_NO_EXT_VOID_COUNT || _RWSTD_NO_CLASS_PARTIAL_SPEC


// 25.1.7 - Mismatch [lib.mismatch]
// 25.1.8 - Equal [lib.alg.equal]
// defined in <rw/_algobase.h>


// helpers to work around the lack of iterator_traits
template <class _FwdIter1, class _FwdIter2, class _Distance1, class _Distance2>
_FwdIter1 __search (_FwdIter1, _FwdIter1, _FwdIter2, _FwdIter2,
                    _Distance1*, _Distance2*);

template <class _FwdIter1, class _FwdIter2,
          class _BinaryPredicate, class Distance1, class Distance2>
_FwdIter1 __search (_FwdIter1, _FwdIter1, _FwdIter2, _FwdIter2,
                    _BinaryPredicate, Distance1*, Distance2*);

// 25.1.9 - Search [lib.alg.search]

// 25.1.9, p1
template <class _FwdIter1, class _FwdIter2>
inline _FwdIter1 search (_FwdIter1 __first1, _FwdIter1 __last1,
                         _FwdIter2 __first2, _FwdIter2 __last2)
{
    return __search (__first1, __last1, __first2, __last2,
                     _RWSTD_DIFFERENCE_TYPE (_FwdIter1),
                     _RWSTD_DIFFERENCE_TYPE (_FwdIter2));
}


template <class _FwdIter1, class _FwdIter2, class _BinaryPredicate>
inline _FwdIter1 search (_FwdIter1 __first1,_FwdIter1 __last1,
                         _FwdIter2 __first2,_FwdIter2 __last2,
                         _BinaryPredicate __pred)
{
    return __search (__first1, __last1, __first2, __last2, __pred,
                     _RWSTD_DIFFERENCE_TYPE (_FwdIter1),
                     _RWSTD_DIFFERENCE_TYPE (_FwdIter2));
}


// helper to work around the lack of iterator_traits
template <class _FwdIter, class _Distance, class _Size, class _TypeT>
_FwdIter __search_n (_FwdIter, _FwdIter, _Distance*, _Size, const _TypeT&);
 
template <class _FwdIter, class _Distance, class _Size, class _TypeT,
          class _BinaryPredicate>
_FwdIter __search_n (_FwdIter, _FwdIter, _Distance*, _Size,
                     const _TypeT&, _BinaryPredicate);

// 25.1.9, p4
template <class _FwdIter, class _Size, class _TypeT>
inline _FwdIter search_n (_FwdIter __first, _FwdIter __last,
                          _Size __count, const _TypeT& __value)
{
    if (__count) 
        return __search_n (__first, __last, _RWSTD_DIFFERENCE_TYPE (_FwdIter),
                           __count, __value);
    return __first;
}


template <class _FwdIter, class _Size, class _TypeT, class _BinaryPredicate>
inline _FwdIter search_n (_FwdIter __first, _FwdIter __last,
                          _Size __count, const _TypeT& __value,
                          _BinaryPredicate __pred)
{
    if (__count) 
        return __search_n (__first, __last,
                           _RWSTD_DIFFERENCE_TYPE (_FwdIter),
                           __count,__value, __pred);
    return __first;
}


// 25.2 - Mutating sequence operations [lib.alg.modifying,operations]

// 25.2.1 - Copy [lib.alg.copy]
// 25.2.2, p1 swap
// defined in <rw/_algobase.h>

// 25.2.2, p3
template <class _FwdIter1, class _FwdIter2>
_FwdIter2 swap_ranges (_FwdIter1, _FwdIter1, _FwdIter2);

// 25.2.3 - Transform [lib.alg.transform]
template <class _InputIter, class _OutputIter, class _UnaryOperation>
_OutputIter transform (_InputIter, _InputIter, _OutputIter, _UnaryOperation);

template <class _InputIter1, class _InputIter2, class _OutputIter,
          class _BinaryOperation>
_OutputIter transform (_InputIter1, _InputIter1, _InputIter2, _OutputIter,
                       _BinaryOperation);

// 25.2.4 - Replace [lib.alg.replace]
template <class _FwdIter, class _TypeT>
void replace (_FwdIter, _FwdIter, const _TypeT&, const _TypeT&);

template <class _FwdIter, class _Predicate, class _TypeT>
void replace_if (_FwdIter, _FwdIter, _Predicate, const _TypeT&);

template <class _InputIter, class _OutputIter, class _TypeT>
_OutputIter replace_copy (_InputIter, _InputIter, _OutputIter,
                          const _TypeT&, const _TypeT&);

template <class _Iter, class _OutputIter, class _Predicate, class _TypeT>
_OutputIter replace_copy_if (_Iter, _Iter, _OutputIter, _Predicate,
                             const _TypeT&);

// 25.2.5 - Fill [lib.alg.fill]
// defined in <rw/_algobase.h>

// 25.2.6 - Generate [lib.alg.generate]

template <class _FwdIter, class _Generator>
void generate (_FwdIter, _FwdIter, _Generator);

template <class _OutputIter, class _Size, class _Generator>
void generate_n (_OutputIter, _Size, _Generator);

// 25.2.7 - Remove [lib.alg.remove]
template <class _InputIter, class _OutputIter, class _TypeT>
_OutputIter remove_copy (_InputIter, _InputIter, _OutputIter,
                         const _TypeT&);

template <class _InputIter, class _OutputIter, class _Predicate>
_OutputIter remove_copy_if (_InputIter, _InputIter, _OutputIter, _Predicate);


template <class _FwdIter, class _TypeT>
inline _FwdIter
remove (_FwdIter __first, _FwdIter __last, const _TypeT& __value)
{
    __first = _STD::find (__first, __last, __value);
    _FwdIter __next = __first;
    return __first == __last ?
        __first : _STD::remove_copy (++__next, __last, __first, __value);
}


template <class _FwdIter, class _Predicate>
inline _FwdIter remove_if (_FwdIter __first, _FwdIter __last, _Predicate __pred)
{
    __first = _STD::find_if (__first, __last, __pred);
    _FwdIter __next = __first;
    return __first == __last ?

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
92国产精品观看| 国产欧美精品一区二区三区四区| 在线免费观看日本欧美| eeuss影院一区二区三区| 成人午夜av电影| 不卡的av电影在线观看| 成人免费福利片| 99久久久精品| 在线亚洲欧美专区二区| 欧美影院精品一区| 欧美日韩一区小说| 91精品国产91久久综合桃花| 91精品国产综合久久久久久漫画| 欧美日韩免费一区二区三区视频| 欧美日韩亚洲综合在线| 欧美日本乱大交xxxxx| 欧美人妖巨大在线| 欧美一区二区久久久| 日韩视频一区二区在线观看| 日韩精品五月天| 丝袜美腿成人在线| 久久99精品网久久| 国产成人在线电影| 色香蕉久久蜜桃| 在线不卡a资源高清| 日韩免费一区二区三区在线播放| 欧美精品一区二区三区蜜桃| 国产清纯美女被跳蛋高潮一区二区久久w | 国产成人精品综合在线观看| 国产成人福利片| 99久久综合国产精品| 精品视频一区二区不卡| 欧美mv和日韩mv的网站| 国产日韩精品一区| 亚洲一区在线观看视频| 久久99精品视频| av电影在线不卡| 欧美日韩国产精品自在自线| 久久久久久久久免费| 亚洲人吸女人奶水| 日本女人一区二区三区| 成人小视频在线观看| 欧美年轻男男videosbes| 久久久精品影视| 亚洲成av人影院| 高清在线成人网| 欧美日韩国产小视频| 久久你懂得1024| 亚洲成人一区二区在线观看| 精品一区二区久久| 91蝌蚪porny成人天涯| 日韩欧美一级二级三级久久久| 国产精品国产三级国产aⅴ入口| 午夜欧美一区二区三区在线播放| 国产乱码一区二区三区| 欧美色偷偷大香| 欧美国产日韩一二三区| 日韩精品一区第一页| 99re亚洲国产精品| 精品盗摄一区二区三区| 亚洲一区二区三区视频在线播放 | 久久成人免费电影| 99久久777色| 精品日产卡一卡二卡麻豆| 亚洲男同1069视频| 国产成人综合在线观看| 欧美精品v国产精品v日韩精品| 中文字幕av不卡| 国模一区二区三区白浆| 成人免费小视频| 国产剧情一区二区| 欧美精选一区二区| 一区二区免费视频| 成人av网站在线观看| 久久婷婷久久一区二区三区| 亚洲午夜久久久久久久久电影院| 北条麻妃一区二区三区| 久久综合久久综合九色| 日韩精品免费专区| 欧美性生活影院| 自拍偷拍亚洲激情| 国产91精品在线观看| 日韩美女天天操| 蜜桃视频在线一区| 欧美精品久久一区二区三区| 亚洲午夜三级在线| 在线观看免费成人| 国产精品久久久久四虎| 韩日欧美一区二区三区| 日韩欧美成人激情| 蜜臀99久久精品久久久久久软件| 欧美日韩中文字幕一区二区| 亚洲线精品一区二区三区八戒| 99视频精品在线| 综合久久国产九一剧情麻豆| 成人国产在线观看| 国产精品视频观看| 成人h精品动漫一区二区三区| 国产丝袜欧美中文另类| 国产不卡免费视频| 中文字幕第一区二区| 国产成人精品午夜视频免费| 日本一区二区三区久久久久久久久不| 韩国女主播成人在线观看| 欧美精品一区二区高清在线观看| 久久se这里有精品| 久久男人中文字幕资源站| 国产夫妻精品视频| 国产精品网友自拍| 91亚洲精品久久久蜜桃网站| 亚洲欧洲综合另类| 在线国产亚洲欧美| 午夜日韩在线电影| 日韩欧美国产高清| 国产美女久久久久| 一区二区中文视频| 欧美亚洲一区二区在线| 天天射综合影视| 精品国产91乱码一区二区三区 | 色系网站成人免费| 亚洲国产精品久久人人爱蜜臀| 欧美日韩夫妻久久| 狠狠色狠狠色综合| 国产精品久久久久久久久果冻传媒| 色综合天天综合网国产成人综合天 | 91麻豆精品国产91久久久久| 美国精品在线观看| 国产午夜精品在线观看| 国产成a人亚洲| 亚洲综合丁香婷婷六月香| 51午夜精品国产| 国产精品白丝av| 亚洲色图在线看| 欧美剧情片在线观看| 国产麻豆视频一区| 亚洲美女视频在线观看| 欧美精品色一区二区三区| 国产一区二区成人久久免费影院| 国产精品视频在线看| 欧美日韩亚洲丝袜制服| 国内精品久久久久影院薰衣草| 欧美韩国一区二区| 欧美日韩三级一区二区| 国产在线不卡视频| 亚洲综合久久av| 久久综合99re88久久爱| 色狠狠一区二区三区香蕉| 美女精品一区二区| 最新日韩在线视频| 日韩一区二区三区视频| 不卡一区在线观看| 日本系列欧美系列| 成人免费一区二区三区视频 | 国产欧美中文在线| 欧美色电影在线| 国产激情精品久久久第一区二区 | 国产成人精品免费在线| 亚洲va欧美va国产va天堂影院| 久久久www成人免费无遮挡大片| 91久久免费观看| 国产麻豆成人精品| 日本欧美大码aⅴ在线播放| 一区二区中文字幕在线| 欧美变态口味重另类| 在线精品视频一区二区三四| 国产一区二区三区四区五区入口| 亚洲一区二区三区自拍| 国产亚洲精品aa| 欧美一级二级三级乱码| 色婷婷综合久久| 国产高清成人在线| 免费观看在线色综合| 一区二区三区中文字幕精品精品 | 91精品国产欧美一区二区成人| www.亚洲人| 国产一区二区网址| 日本中文字幕一区二区视频| 亚洲素人一区二区| 中文字幕乱码一区二区免费| 日韩欧美国产综合一区| 欧美日韩1区2区| 欧美亚洲一区二区三区四区| 99re视频精品| 成人精品视频一区| 国产盗摄女厕一区二区三区| 另类调教123区| 视频在线观看91| 亚洲超碰精品一区二区| 亚洲精品国产成人久久av盗摄| 国产女人18毛片水真多成人如厕| 精品动漫一区二区三区在线观看| 9191成人精品久久| 欧美日韩国产另类不卡| 欧美另类高清zo欧美| 欧美色图在线观看| 欧美日韩精品一区二区天天拍小说 | 婷婷综合另类小说色区| 亚洲一区免费视频| 亚洲综合色噜噜狠狠| 亚洲一区二区三区三|