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

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

?? stl_hash_set.h

?? TSP問題的一個類庫 有源代碼和stl
?? H
?? 第 1 頁 / 共 2 頁
字號:
/*
 * Copyright (c) 1996
 * 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.
 *
 *
 * 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.
 *
 */

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

#ifndef __SGI_STL_INTERNAL_HASH_SET_H
#define __SGI_STL_INTERNAL_HASH_SET_H

__STL_BEGIN_NAMESPACE

#if defined(__sgi) && !defined(__GNUC__) && (_MIPS_SIM != _MIPS_SIM_ABI32)
#pragma set woff 1174
#pragma set woff 1375
#endif

// Forward declaration of equality operator; needed for friend declaration.

template <class _Value,
          class _HashFcn  __STL_DEPENDENT_DEFAULT_TMPL(hash<_Value>),
          class _EqualKey __STL_DEPENDENT_DEFAULT_TMPL(equal_to<_Value>),
          class _Alloc =  __STL_DEFAULT_ALLOCATOR(_Value) >
class hash_set;

template <class _Value, class _HashFcn, class _EqualKey, class _Alloc>
inline bool 
operator==(const hash_set<_Value,_HashFcn,_EqualKey,_Alloc>& __hs1,
           const hash_set<_Value,_HashFcn,_EqualKey,_Alloc>& __hs2);

template <class _Value, class _HashFcn, class _EqualKey, class _Alloc>
class hash_set
{
private:
  typedef hashtable<_Value, _Value, _HashFcn, _Identity<_Value>, 
                    _EqualKey, _Alloc> _Ht;
  _Ht _M_ht;

public:
  typedef typename _Ht::key_type key_type;
  typedef typename _Ht::value_type value_type;
  typedef typename _Ht::hasher hasher;
  typedef typename _Ht::key_equal key_equal;

  typedef typename _Ht::size_type size_type;
  typedef typename _Ht::difference_type difference_type;
  typedef typename _Ht::const_pointer pointer;
  typedef typename _Ht::const_pointer const_pointer;
  typedef typename _Ht::const_reference reference;
  typedef typename _Ht::const_reference const_reference;

  typedef typename _Ht::const_iterator iterator;
  typedef typename _Ht::const_iterator const_iterator;

  typedef typename _Ht::allocator_type allocator_type;

  hasher hash_funct() const { return _M_ht.hash_funct(); }
  key_equal key_eq() const { return _M_ht.key_eq(); }
  allocator_type get_allocator() const { return _M_ht.get_allocator(); }

public:
  hash_set()
    : _M_ht(100, hasher(), key_equal(), allocator_type()) {}
  explicit hash_set(size_type __n)
    : _M_ht(__n, hasher(), key_equal(), allocator_type()) {}
  hash_set(size_type __n, const hasher& __hf)
    : _M_ht(__n, __hf, key_equal(), allocator_type()) {}
  hash_set(size_type __n, const hasher& __hf, const key_equal& __eql,
           const allocator_type& __a = allocator_type())
    : _M_ht(__n, __hf, __eql, __a) {}

#ifdef __STL_MEMBER_TEMPLATES
  template <class _InputIterator>
  hash_set(_InputIterator __f, _InputIterator __l)
    : _M_ht(100, hasher(), key_equal(), allocator_type())
    { _M_ht.insert_unique(__f, __l); }
  template <class _InputIterator>
  hash_set(_InputIterator __f, _InputIterator __l, size_type __n)
    : _M_ht(__n, hasher(), key_equal(), allocator_type())
    { _M_ht.insert_unique(__f, __l); }
  template <class _InputIterator>
  hash_set(_InputIterator __f, _InputIterator __l, size_type __n,
           const hasher& __hf)
    : _M_ht(__n, __hf, key_equal(), allocator_type())
    { _M_ht.insert_unique(__f, __l); }
  template <class _InputIterator>
  hash_set(_InputIterator __f, _InputIterator __l, size_type __n,
           const hasher& __hf, const key_equal& __eql,
           const allocator_type& __a = allocator_type())
    : _M_ht(__n, __hf, __eql, __a)
    { _M_ht.insert_unique(__f, __l); }
#else

  hash_set(const value_type* __f, const value_type* __l)
    : _M_ht(100, hasher(), key_equal(), allocator_type())
    { _M_ht.insert_unique(__f, __l); }
  hash_set(const value_type* __f, const value_type* __l, size_type __n)
    : _M_ht(__n, hasher(), key_equal(), allocator_type())
    { _M_ht.insert_unique(__f, __l); }
  hash_set(const value_type* __f, const value_type* __l, size_type __n,
           const hasher& __hf)
    : _M_ht(__n, __hf, key_equal(), allocator_type())
    { _M_ht.insert_unique(__f, __l); }
  hash_set(const value_type* __f, const value_type* __l, size_type __n,
           const hasher& __hf, const key_equal& __eql,
           const allocator_type& __a = allocator_type())
    : _M_ht(__n, __hf, __eql, __a)
    { _M_ht.insert_unique(__f, __l); }

  hash_set(const_iterator __f, const_iterator __l)
    : _M_ht(100, hasher(), key_equal(), allocator_type())
    { _M_ht.insert_unique(__f, __l); }
  hash_set(const_iterator __f, const_iterator __l, size_type __n)
    : _M_ht(__n, hasher(), key_equal(), allocator_type())
    { _M_ht.insert_unique(__f, __l); }
  hash_set(const_iterator __f, const_iterator __l, size_type __n,
           const hasher& __hf)
    : _M_ht(__n, __hf, key_equal(), allocator_type())
    { _M_ht.insert_unique(__f, __l); }
  hash_set(const_iterator __f, const_iterator __l, size_type __n,
           const hasher& __hf, const key_equal& __eql,
           const allocator_type& __a = allocator_type())
    : _M_ht(__n, __hf, __eql, __a)
    { _M_ht.insert_unique(__f, __l); }
#endif /*__STL_MEMBER_TEMPLATES */

public:
  size_type size() const { return _M_ht.size(); }
  size_type max_size() const { return _M_ht.max_size(); }
  bool empty() const { return _M_ht.empty(); }
  void swap(hash_set& __hs) { _M_ht.swap(__hs._M_ht); }

#ifdef __STL_MEMBER_TEMPLATES
  template <class _Val, class _HF, class _EqK, class _Al>  
  friend bool operator== (const hash_set<_Val, _HF, _EqK, _Al>&,
                          const hash_set<_Val, _HF, _EqK, _Al>&);
#else /* __STL_MEMBER_TEMPLATES */
  friend bool __STD_QUALIFIER
  operator== __STL_NULL_TMPL_ARGS (const hash_set&, const hash_set&);
#endif /* __STL_MEMBER_TEMPLATES */

  iterator begin() const { return _M_ht.begin(); }
  iterator end() const { return _M_ht.end(); }

public:
  pair<iterator, bool> insert(const value_type& __obj)
    {
      pair<typename _Ht::iterator, bool> __p = _M_ht.insert_unique(__obj);
      return pair<iterator,bool>(__p.first, __p.second);
    }
#ifdef __STL_MEMBER_TEMPLATES
  template <class _InputIterator>
  void insert(_InputIterator __f, _InputIterator __l) 
    { _M_ht.insert_unique(__f,__l); }
#else
  void insert(const value_type* __f, const value_type* __l) {
    _M_ht.insert_unique(__f,__l);
  }
  void insert(const_iterator __f, const_iterator __l) 
    {_M_ht.insert_unique(__f, __l); }
#endif /*__STL_MEMBER_TEMPLATES */
  pair<iterator, bool> insert_noresize(const value_type& __obj)
  {
    pair<typename _Ht::iterator, bool> __p = 
      _M_ht.insert_unique_noresize(__obj);
    return pair<iterator, bool>(__p.first, __p.second);
  }

  iterator find(const key_type& __key) const { return _M_ht.find(__key); }

  size_type count(const key_type& __key) const { return _M_ht.count(__key); }
  
  pair<iterator, iterator> equal_range(const key_type& __key) const
    { return _M_ht.equal_range(__key); }

  size_type erase(const key_type& __key) {return _M_ht.erase(__key); }
  void erase(iterator __it) { _M_ht.erase(__it); }
  void erase(iterator __f, iterator __l) { _M_ht.erase(__f, __l); }
  void clear() { _M_ht.clear(); }

public:
  void resize(size_type __hint) { _M_ht.resize(__hint); }
  size_type bucket_count() const { return _M_ht.bucket_count(); }
  size_type max_bucket_count() const { return _M_ht.max_bucket_count(); }
  size_type elems_in_bucket(size_type __n) const
    { return _M_ht.elems_in_bucket(__n); }
};

template <class _Value, class _HashFcn, class _EqualKey, class _Alloc>
inline bool 
operator==(const hash_set<_Value,_HashFcn,_EqualKey,_Alloc>& __hs1,
           const hash_set<_Value,_HashFcn,_EqualKey,_Alloc>& __hs2)
{
  return __hs1._M_ht == __hs2._M_ht;
}

#ifdef __STL_FUNCTION_TMPL_PARTIAL_ORDER

template <class _Value, class _HashFcn, class _EqualKey, class _Alloc>
inline bool 
operator!=(const hash_set<_Value,_HashFcn,_EqualKey,_Alloc>& __hs1,
           const hash_set<_Value,_HashFcn,_EqualKey,_Alloc>& __hs2) {
  return !(__hs1 == __hs2);
}

template <class _Val, class _HashFcn, class _EqualKey, class _Alloc>
inline void 
swap(hash_set<_Val,_HashFcn,_EqualKey,_Alloc>& __hs1,
     hash_set<_Val,_HashFcn,_EqualKey,_Alloc>& __hs2)
{
  __hs1.swap(__hs2);
}

#endif /* __STL_FUNCTION_TMPL_PARTIAL_ORDER */


template <class _Value,
          class _HashFcn  __STL_DEPENDENT_DEFAULT_TMPL(hash<_Value>),
          class _EqualKey __STL_DEPENDENT_DEFAULT_TMPL(equal_to<_Value>),
          class _Alloc =  __STL_DEFAULT_ALLOCATOR(_Value) >
class hash_multiset;

template <class _Val, class _HashFcn, class _EqualKey, class _Alloc>
inline bool 
operator==(const hash_multiset<_Val,_HashFcn,_EqualKey,_Alloc>& __hs1,
           const hash_multiset<_Val,_HashFcn,_EqualKey,_Alloc>& __hs2);


?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91视频观看视频| 亚洲精品国产第一综合99久久 | 欧美成人精品二区三区99精品| 精品国产三级电影在线观看| 一区二区三区欧美| 国产成人自拍网| 欧美一级久久久久久久大片| 中文字幕一区二区三区色视频 | 26uuu欧美日本| 亚洲综合色网站| 成人免费高清在线| 26uuu精品一区二区在线观看| 亚洲图片欧美一区| 成人开心网精品视频| 久久这里只有精品视频网| 奇米一区二区三区| 欧美亚洲动漫另类| 亚洲女人****多毛耸耸8| 国产在线麻豆精品观看| 宅男在线国产精品| 亚洲国产欧美在线人成| 色天使久久综合网天天| 中文字幕成人av| 国产 日韩 欧美大片| 久久久久久久性| 国产高清精品久久久久| 亚洲精品一线二线三线无人区| 三级在线观看一区二区| 欧美久久久影院| 日本中文一区二区三区| 3d成人动漫网站| 七七婷婷婷婷精品国产| 日韩视频国产视频| 国产在线麻豆精品观看| 国产婷婷色一区二区三区| 国产精品白丝jk黑袜喷水| 欧美国产一区在线| 成av人片一区二区| 亚洲欧美乱综合| 在线一区二区三区| 亚洲大型综合色站| 欧美刺激午夜性久久久久久久| 麻豆精品一区二区三区| www日韩大片| av在线一区二区| 一区二区三区在线观看视频| 欧洲视频一区二区| 日韩精品一区第一页| 日韩美女天天操| 国产精品99久| 亚洲激情五月婷婷| 欧美高清精品3d| 理论片日本一区| 中文字幕高清不卡| 精品视频免费在线| 久久激情五月婷婷| 亚洲视频在线一区二区| 欧美精品乱码久久久久久按摩| 久久国产生活片100| 亚洲天堂福利av| 欧美一区二区三区在线观看| 国产一区二区伦理| 亚洲在线视频网站| 国产亚洲精久久久久久| 欧美视频中文一区二区三区在线观看| 奇米综合一区二区三区精品视频| www国产成人免费观看视频 深夜成人网| 不卡视频一二三四| 日韩国产一二三区| 国产欧美日韩激情| 欧美日韩一卡二卡| 成人精品亚洲人成在线| 婷婷成人激情在线网| 欧美激情一区不卡| 91精品国产综合久久蜜臀| www.99精品| 久久99久久99精品免视看婷婷| 亚洲视频你懂的| 久久综合成人精品亚洲另类欧美| 日本韩国视频一区二区| 国产精品一品二品| 免费视频最近日韩| 一区二区三区高清| 国产亚洲一区二区在线观看| 欧美精品少妇一区二区三区| 91原创在线视频| 国产曰批免费观看久久久| 午夜精品久久久久久久蜜桃app| 国产精品欧美一区二区三区| 日韩视频一区二区三区| 欧美日韩国产综合久久| 91在线无精精品入口| 国产成人精品综合在线观看 | 成人av免费网站| 国产呦精品一区二区三区网站| 亚洲综合999| 亚洲美女免费在线| 国产色产综合色产在线视频 | 国产xxx精品视频大全| 久久国产婷婷国产香蕉| 蜜桃视频一区二区三区| 亚洲成人免费影院| 一区二区三区免费| 亚洲视频 欧洲视频| 国产精品日产欧美久久久久| 久久久久国产精品麻豆| 亚洲精品一区二区三区香蕉| 91精品综合久久久久久| 欧美日本国产视频| 欧美日韩精品三区| 欧美日韩视频专区在线播放| 欧美日韩中文一区| 欧美视频一区二区三区四区| 欧美亚洲综合久久| 欧美日韩精品一区二区三区蜜桃| 欧美视频在线播放| 欧美无砖专区一中文字| 欧美系列日韩一区| 欧美色图一区二区三区| 欧美日韩精品专区| 欧美一区二区三区不卡| 日韩三级视频在线观看| 精品日韩av一区二区| 久久亚洲综合色一区二区三区| 久久精品一区二区三区不卡牛牛| 国产色产综合产在线视频| 国产精品久久精品日日| 亚洲天堂免费看| 婷婷中文字幕一区三区| 免费一级片91| 岛国精品在线观看| 91香蕉视频在线| 91精品办公室少妇高潮对白| 欧美电影一区二区三区| 日韩欧美的一区| 国产精品剧情在线亚洲| 亚洲国产精品嫩草影院| 免费看欧美女人艹b| 国产suv精品一区二区883| 日本乱码高清不卡字幕| 精品蜜桃在线看| 国产精品久久二区二区| 亚洲午夜电影在线观看| 国产一区999| 色婷婷国产精品综合在线观看| 7777精品久久久大香线蕉| 26uuu成人网一区二区三区| 亚洲欧美另类小说| 七七婷婷婷婷精品国产| av在线播放成人| 日韩视频一区二区| 亚洲色图在线视频| 激情深爱一区二区| 色哟哟日韩精品| 337p粉嫩大胆噜噜噜噜噜91av | 国产91露脸合集magnet| 欧美色图激情小说| 一区二区三区精密机械公司| 极品美女销魂一区二区三区| 波多野结衣在线一区| 日韩三级电影网址| 一区二区理论电影在线观看| 国内国产精品久久| 欧美性色黄大片| 欧美激情综合五月色丁香小说| 无码av中文一区二区三区桃花岛| 成人一区二区三区中文字幕| 制服视频三区第一页精品| 国产精品久久久久久亚洲伦| 久久精品国产99国产| 欧美色老头old∨ideo| 国产精品久久久久久久第一福利| 久久国产婷婷国产香蕉| 欧美亚洲动漫另类| 亚洲日本在线视频观看| 国产成人午夜精品5599| 日韩女同互慰一区二区| 午夜激情一区二区| 91丨九色丨尤物| 国产精品少妇自拍| 国产成人综合自拍| 日韩免费一区二区| 日韩精品欧美精品| 欧美精品电影在线播放| 亚洲精品乱码久久久久久久久| 床上的激情91.| 国产精品你懂的在线欣赏| 激情文学综合网| 久久综合色之久久综合| 精品一区二区三区久久| 91精品麻豆日日躁夜夜躁| 午夜精品久久久久久久久久| 91久久精品一区二区| 夜夜夜精品看看| 在线观看视频一区二区 | 国产午夜精品一区二区三区视频| 成人性生交大片免费看视频在线 | 欧美综合一区二区| 亚洲欧美色综合| 色婷婷一区二区三区四区|