iterator.h
上传用户:nizebo
上传日期:2022-05-14
资源大小:882k
文件大小:3k
源码类别:

STL

开发平台:

Visual C++

  1. /*
  2.  *
  3.  * Copyright (c) 1994
  4.  * Hewlett-Packard Company
  5.  *
  6.  * Permission to use, copy, modify, distribute and sell this software
  7.  * and its documentation for any purpose is hereby granted without fee,
  8.  * provided that the above copyright notice appear in all copies and
  9.  * that both that copyright notice and this permission notice appear
  10.  * in supporting documentation.  Hewlett-Packard Company makes no
  11.  * representations about the suitability of this software for any
  12.  * purpose.  It is provided "as is" without express or implied warranty.
  13.  *
  14.  *
  15.  * Copyright (c) 1996
  16.  * Silicon Graphics Computer Systems, Inc.
  17.  *
  18.  * Permission to use, copy, modify, distribute and sell this software
  19.  * and its documentation for any purpose is hereby granted without fee,
  20.  * provided that the above copyright notice appear in all copies and
  21.  * that both that copyright notice and this permission notice appear
  22.  * in supporting documentation.  Silicon Graphics makes no
  23.  * representations about the suitability of this software for any
  24.  * purpose.  It is provided "as is" without express or implied warranty.
  25.  */
  26. #ifndef __SGI_STL_ITERATOR_H
  27. #define __SGI_STL_ITERATOR_H
  28. #ifndef __SGI_STL_FUNCTION_H
  29. #include <function.h>
  30. #endif
  31. #include <stddef.h>
  32. #ifdef __STL_USE_NEW_IOSTREAMS 
  33. #include <iosfwd>
  34. #else /* __STL_USE_NEW_IOSTREAMS */
  35. #include <iostream.h>
  36. #endif /* __STL_USE_NEW_IOSTREAMS */
  37. #ifndef __SGI_STL_INTERNAL_ITERATOR_BASE_H
  38. #include <stl_iterator_base.h>
  39. #endif
  40. #ifndef __SGI_STL_INTERNAL_ITERATOR_H
  41. #include <stl_iterator.h>
  42. #endif
  43. #ifndef __TYPE_TRAITS_H
  44. #include <type_traits.h>
  45. #endif
  46. #ifndef __SGI_STL_INTERNAL_CONSTRUCT_H
  47. #include <stl_construct.h>
  48. #endif
  49. #ifndef __SGI_STL_INTERNAL_RAW_STORAGE_ITERATOR_H
  50. #include <stl_raw_storage_iter.h>
  51. #endif
  52. #ifdef __STL_USE_NAMESPACES
  53. // Names from stl_iterator.h
  54. using __STD::input_iterator_tag;
  55. using __STD::output_iterator_tag;
  56. using __STD::forward_iterator_tag;
  57. using __STD::bidirectional_iterator_tag;
  58. using __STD::random_access_iterator_tag;
  59. #if 0
  60. using __STD::iterator;
  61. #endif
  62. using __STD::input_iterator;
  63. using __STD::output_iterator;
  64. using __STD::forward_iterator;
  65. using __STD::bidirectional_iterator;
  66. using __STD::random_access_iterator;
  67. #ifdef __STL_CLASS_PARTIAL_SPECIALIZATION
  68. using __STD::iterator_traits;
  69. #endif
  70. using __STD::iterator_category;
  71. using __STD::distance_type;
  72. using __STD::value_type;
  73. using __STD::distance; 
  74. using __STD::advance; 
  75. using __STD::insert_iterator;
  76. using __STD::front_insert_iterator;
  77. using __STD::back_insert_iterator;
  78. using __STD::inserter;
  79. using __STD::front_inserter;
  80. using __STD::back_inserter;
  81. using __STD::reverse_iterator;
  82. using __STD::reverse_bidirectional_iterator;
  83. using __STD::istream_iterator;
  84. using __STD::ostream_iterator;
  85. // Names from stl_construct.h
  86. using __STD::construct;
  87. using __STD::destroy;
  88. // Names from stl_raw_storage_iter.h
  89. using __STD::raw_storage_iterator;
  90. #endif /* __STL_USE_NAMESPACES */
  91. #endif /* __SGI_STL_ITERATOR_H */
  92. // Local Variables:
  93. // mode:C++
  94. // End: