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

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

?? stl_uninitialized.h

?? TSP問題的一個類庫 有源代碼和stl
?? H
字號:
/*
 *
 * 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) 1996,1997
 * Silicon Graphics Computer Systems, Inc.
 *
 * 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.  Silicon Graphics makes no
 * representations about the suitability of this software for any
 * purpose.  It is provided "as is" without express or implied warranty.
 */

/* NOTE: This is an internal header file, included by other STL headers.
 *   You should not attempt to use it directly.
 */

#ifndef __SGI_STL_INTERNAL_UNINITIALIZED_H
#define __SGI_STL_INTERNAL_UNINITIALIZED_H

__STL_BEGIN_NAMESPACE

// uninitialized_copy

// Valid if copy construction is equivalent to assignment, and if the
//  destructor is trivial.
template <class _InputIter, class _ForwardIter>
inline _ForwardIter 
__uninitialized_copy_aux(_InputIter __first, _InputIter __last,
                         _ForwardIter __result,
                         __true_type)
{
  return copy(__first, __last, __result);
}

template <class _InputIter, class _ForwardIter>
_ForwardIter 
__uninitialized_copy_aux(_InputIter __first, _InputIter __last,
                         _ForwardIter __result,
                         __false_type)
{
  _ForwardIter __cur = __result;
  __STL_TRY {
    for ( ; __first != __last; ++__first, ++__cur)
      construct(&*__cur, *__first);
    return __cur;
  }
  __STL_UNWIND(destroy(__result, __cur));
}


template <class _InputIter, class _ForwardIter, class _Tp>
inline _ForwardIter
__uninitialized_copy(_InputIter __first, _InputIter __last,
                     _ForwardIter __result, _Tp*)
{
  typedef typename __type_traits<_Tp>::is_POD_type _Is_POD;
  return __uninitialized_copy_aux(__first, __last, __result, _Is_POD());
}

template <class _InputIter, class _ForwardIter>
inline _ForwardIter
  uninitialized_copy(_InputIter __first, _InputIter __last,
                     _ForwardIter __result)
{
  return __uninitialized_copy(__first, __last, __result,
                              __VALUE_TYPE(__result));
}

inline char* uninitialized_copy(const char* __first, const char* __last,
                                char* __result) {
  memmove(__result, __first, __last - __first);
  return __result + (__last - __first);
}

inline wchar_t* 
uninitialized_copy(const wchar_t* __first, const wchar_t* __last,
                   wchar_t* __result)
{
  memmove(__result, __first, sizeof(wchar_t) * (__last - __first));
  return __result + (__last - __first);
}

// uninitialized_copy_n (not part of the C++ standard)

template <class _InputIter, class _Size, class _ForwardIter>
pair<_InputIter, _ForwardIter>
__uninitialized_copy_n(_InputIter __first, _Size __count,
                       _ForwardIter __result,
                       input_iterator_tag)
{
  _ForwardIter __cur = __result;
  __STL_TRY {
    for ( ; __count > 0 ; --__count, ++__first, ++__cur) 
      construct(&*__cur, *__first);
    return pair<_InputIter, _ForwardIter>(__first, __cur);
  }
  __STL_UNWIND(destroy(__result, __cur));
}

template <class _RandomAccessIter, class _Size, class _ForwardIter>
inline pair<_RandomAccessIter, _ForwardIter>
__uninitialized_copy_n(_RandomAccessIter __first, _Size __count,
                       _ForwardIter __result,
                       random_access_iterator_tag) {
  _RandomAccessIter __last = __first + __count;
  return pair<_RandomAccessIter, _ForwardIter>(
                 __last,
                 uninitialized_copy(__first, __last, __result));
}

template <class _InputIter, class _Size, class _ForwardIter>
inline pair<_InputIter, _ForwardIter>
__uninitialized_copy_n(_InputIter __first, _Size __count,
                     _ForwardIter __result) {
  return __uninitialized_copy_n(__first, __count, __result,
                                __ITERATOR_CATEGORY(__first));
}

template <class _InputIter, class _Size, class _ForwardIter>
inline pair<_InputIter, _ForwardIter>
uninitialized_copy_n(_InputIter __first, _Size __count,
                     _ForwardIter __result) {
  return __uninitialized_copy_n(__first, __count, __result,
                                __ITERATOR_CATEGORY(__first));
}

// Valid if copy construction is equivalent to assignment, and if the
// destructor is trivial.
template <class _ForwardIter, class _Tp>
inline void
__uninitialized_fill_aux(_ForwardIter __first, _ForwardIter __last, 
                         const _Tp& __x, __true_type)
{
  fill(__first, __last, __x);
}

template <class _ForwardIter, class _Tp>
void
__uninitialized_fill_aux(_ForwardIter __first, _ForwardIter __last, 
                         const _Tp& __x, __false_type)
{
  _ForwardIter __cur = __first;
  __STL_TRY {
    for ( ; __cur != __last; ++__cur)
      construct(&*__cur, __x);
  }
  __STL_UNWIND(destroy(__first, __cur));
}

template <class _ForwardIter, class _Tp, class _Tp1>
inline void __uninitialized_fill(_ForwardIter __first, 
                                 _ForwardIter __last, const _Tp& __x, _Tp1*)
{
  typedef typename __type_traits<_Tp1>::is_POD_type _Is_POD;
  __uninitialized_fill_aux(__first, __last, __x, _Is_POD());
                   
}

template <class _ForwardIter, class _Tp>
inline void uninitialized_fill(_ForwardIter __first,
                               _ForwardIter __last, 
                               const _Tp& __x)
{
  __uninitialized_fill(__first, __last, __x, __VALUE_TYPE(__first));
}

// Valid if copy construction is equivalent to assignment, and if the
//  destructor is trivial.
template <class _ForwardIter, class _Size, class _Tp>
inline _ForwardIter
__uninitialized_fill_n_aux(_ForwardIter __first, _Size __n,
                           const _Tp& __x, __true_type)
{
  return fill_n(__first, __n, __x);
}

template <class _ForwardIter, class _Size, class _Tp>
_ForwardIter
__uninitialized_fill_n_aux(_ForwardIter __first, _Size __n,
                           const _Tp& __x, __false_type)
{
  _ForwardIter __cur = __first;
  __STL_TRY {
    for ( ; __n > 0; --__n, ++__cur)
      construct(&*__cur, __x);
    return __cur;
  }
  __STL_UNWIND(destroy(__first, __cur));
}

template <class _ForwardIter, class _Size, class _Tp, class _Tp1>
inline _ForwardIter 
__uninitialized_fill_n(_ForwardIter __first, _Size __n, const _Tp& __x, _Tp1*)
{
  typedef typename __type_traits<_Tp1>::is_POD_type _Is_POD;
  return __uninitialized_fill_n_aux(__first, __n, __x, _Is_POD());
}

template <class _ForwardIter, class _Size, class _Tp>
inline _ForwardIter 
uninitialized_fill_n(_ForwardIter __first, _Size __n, const _Tp& __x)
{
  return __uninitialized_fill_n(__first, __n, __x, __VALUE_TYPE(__first));
}

// Extensions: __uninitialized_copy_copy, __uninitialized_copy_fill, 
// __uninitialized_fill_copy.

// __uninitialized_copy_copy
// Copies [first1, last1) into [result, result + (last1 - first1)), and
//  copies [first2, last2) into
//  [result, result + (last1 - first1) + (last2 - first2)).

template <class _InputIter1, class _InputIter2, class _ForwardIter>
inline _ForwardIter
__uninitialized_copy_copy(_InputIter1 __first1, _InputIter1 __last1,
                          _InputIter2 __first2, _InputIter2 __last2,
                          _ForwardIter __result)
{
  _ForwardIter __mid = uninitialized_copy(__first1, __last1, __result);
  __STL_TRY {
    return uninitialized_copy(__first2, __last2, __mid);
  }
  __STL_UNWIND(destroy(__result, __mid));
}

// __uninitialized_fill_copy
// Fills [result, mid) with x, and copies [first, last) into
//  [mid, mid + (last - first)).
template <class _ForwardIter, class _Tp, class _InputIter>
inline _ForwardIter 
__uninitialized_fill_copy(_ForwardIter __result, _ForwardIter __mid,
                          const _Tp& __x,
                          _InputIter __first, _InputIter __last)
{
  uninitialized_fill(__result, __mid, __x);
  __STL_TRY {
    return uninitialized_copy(__first, __last, __mid);
  }
  __STL_UNWIND(destroy(__result, __mid));
}

// __uninitialized_copy_fill
// Copies [first1, last1) into [first2, first2 + (last1 - first1)), and
//  fills [first2 + (last1 - first1), last2) with x.
template <class _InputIter, class _ForwardIter, class _Tp>
inline void
__uninitialized_copy_fill(_InputIter __first1, _InputIter __last1,
                          _ForwardIter __first2, _ForwardIter __last2,
                          const _Tp& __x)
{
  _ForwardIter __mid2 = uninitialized_copy(__first1, __last1, __first2);
  __STL_TRY {
    uninitialized_fill(__mid2, __last2, __x);
  }
  __STL_UNWIND(destroy(__first2, __mid2));
}

__STL_END_NAMESPACE

#endif /* __SGI_STL_INTERNAL_UNINITIALIZED_H */

// Local Variables:
// mode:C++
// End:

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲人亚洲人成电影网站色| 欧美bbbbb| 视频一区中文字幕国产| 国产精品中文有码| 欧美丝袜丝交足nylons图片| 久久久精品黄色| 三级不卡在线观看| 99re6这里只有精品视频在线观看 99re8在线精品视频免费播放 | 欧美天天综合网| 亚洲国产激情av| 韩国毛片一区二区三区| 欧美精品乱人伦久久久久久| 自拍偷拍国产精品| 国产成a人亚洲精品| 日韩午夜电影在线观看| 亚洲一区二区av在线| 成人中文字幕电影| 久久先锋影音av鲁色资源网| 日韩精品一级二级 | 午夜婷婷国产麻豆精品| 91美女福利视频| 国产精品麻豆视频| 国产成人精品www牛牛影视| 日韩免费视频一区二区| 日韩福利电影在线观看| 欧美午夜精品一区| 亚洲狼人国产精品| 91久久精品一区二区| 国产精品嫩草影院av蜜臀| 国产精品综合二区| 日韩精品一区二区在线| 免费观看日韩av| 精品免费视频一区二区| 久久国产精品色| 精品久久国产老人久久综合| 免费观看91视频大全| 日韩欧美中文字幕公布| 久久成人av少妇免费| 精品国产自在久精品国产| 麻豆精品精品国产自在97香蕉| 91精品婷婷国产综合久久| 日韩中文字幕一区二区三区| 7777精品伊人久久久大香线蕉| 亚洲国产aⅴ天堂久久| 777午夜精品视频在线播放| 婷婷激情综合网| 精品久久人人做人人爰| 韩国三级中文字幕hd久久精品| 久久女同性恋中文字幕| 懂色av一区二区三区免费观看| 亚洲国产电影在线观看| 色先锋资源久久综合| 亚洲国产毛片aaaaa无费看| 欧美一区二区三区婷婷月色| 麻豆精品蜜桃视频网站| 国产肉丝袜一区二区| www.一区二区| 夜夜亚洲天天久久| 日韩欧美在线综合网| 国产电影一区在线| 一区二区三区av电影| 91精品婷婷国产综合久久性色| 国产精华液一区二区三区| 亚洲精品中文字幕乱码三区 | 日本中文一区二区三区| 久久久久成人黄色影片| 色先锋久久av资源部| 久久99这里只有精品| 亚洲视频资源在线| 91精品国产综合久久久久久久 | 国产精品久久久久久妇女6080| 色综合天天综合在线视频| 免费成人av在线| 日韩一区欧美一区| 欧美成人精品高清在线播放| 播五月开心婷婷综合| 日本sm残虐另类| 综合av第一页| 欧美第一区第二区| 欧洲在线/亚洲| 国产成人免费视频网站高清观看视频 | 日韩成人免费看| 亚洲日本成人在线观看| 精品国产伦一区二区三区观看方式 | 国产午夜一区二区三区| 欧美午夜精品免费| 成人在线综合网| 狠狠色丁香九九婷婷综合五月 | 亚洲欧洲日韩av| 欧美成人精品福利| 欧美人与性动xxxx| 94色蜜桃网一区二区三区| 另类专区欧美蜜桃臀第一页| 亚洲一二三四在线观看| 国产精品短视频| 久久精品亚洲麻豆av一区二区 | 在线电影院国产精品| 91在线视频网址| 粉嫩欧美一区二区三区高清影视| 麻豆精品视频在线| 日本女人一区二区三区| 亚洲丰满少妇videoshd| 亚洲乱码国产乱码精品精98午夜 | 欧美挠脚心视频网站| 91网页版在线| www.66久久| 成人sese在线| 国产成人av一区二区三区在线| 免费在线观看日韩欧美| 偷窥少妇高潮呻吟av久久免费| 一区二区三区视频在线看| 18欧美乱大交hd1984| 国产精品乱码一区二区三区软件 | 一本色道久久加勒比精品| 成人免费毛片片v| 成人av电影在线观看| 丁香五精品蜜臀久久久久99网站| 色综合天天综合网天天狠天天| 99在线视频精品| 91视频www| 在线视频欧美区| 欧美日韩国产精选| 欧美剧在线免费观看网站| 欧美做爰猛烈大尺度电影无法无天| 91农村精品一区二区在线| 色94色欧美sute亚洲线路一ni | 国产亚洲制服色| 国产精品久久久久aaaa| 1024亚洲合集| 亚洲图片自拍偷拍| 日韩中文字幕麻豆| 精品一区二区三区香蕉蜜桃 | 国产欧美精品在线观看| 国产精品视频一区二区三区不卡| 1000部国产精品成人观看| 亚洲摸摸操操av| 午夜精品久久久久久久久久久| 免费不卡在线视频| 成人精品gif动图一区| 色悠悠久久综合| 日韩欧美aaaaaa| 国产精品色婷婷久久58| 曰韩精品一区二区| 美女久久久精品| 波多野结衣欧美| 欧美日韩一本到| 久久综合色婷婷| 亚洲乱码精品一二三四区日韩在线 | 国产91精品一区二区麻豆亚洲| 不卡影院免费观看| 欧美精品在线观看播放| 久久久久久影视| 一区二区免费在线播放| 奇米色777欧美一区二区| 国产成人综合在线观看| 色999日韩国产欧美一区二区| 日韩免费高清视频| 中文字幕永久在线不卡| 喷白浆一区二区| 色欧美片视频在线观看在线视频| 日韩一区二区三区观看| 亚洲免费在线视频一区 二区| 另类小说视频一区二区| 色综合av在线| 国产亚洲一区字幕| 日韩av中文字幕一区二区三区| 成人动漫一区二区三区| 91精品国产福利| 亚洲影视在线播放| 成人免费视频国产在线观看| 欧美一区二区视频网站| 亚洲免费在线观看视频| 国产一区二区三区高清播放| 欧美乱妇15p| 一区二区三区日韩在线观看| 国产不卡免费视频| 日韩欧美一区二区久久婷婷| 亚洲电影第三页| 在线视频一区二区三| 亚洲欧洲三级电影| 懂色一区二区三区免费观看| 久久人人97超碰com| 日韩激情一二三区| 在线观看亚洲成人| 亚洲欧美激情在线| 成人avav影音| 国产视频一区在线观看| 国产在线视频一区二区三区| 欧美群妇大交群的观看方式| 亚洲最大的成人av| 91麻豆6部合集magnet| 国产精品―色哟哟| 成人免费高清视频在线观看| 久久久久久久久久久久久夜| 老司机免费视频一区二区| 欧美一区午夜精品| 免费在线一区观看| 欧美一区二区高清| 美女看a上一区| 久久先锋影音av|