STLdoc
STLdocumentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Classes | Macros | Functions
array File Reference
#include <algorithm>
#include <iterator>
#include <tuple>

Classes

class  array< _Ty, _Size >
 
class  array< _Ty, 0 >
 

Macros

#define _ARRAY_
 

Functions

template<class _Ty , size_t _Size, class = enable_if_t<_Size == 0 || _Is_swappable<_Ty>::value>>
void swap (array< _Ty, _Size > &_Left, array< _Ty, _Size > &_Right) _NOEXCEPT_OP(_NOEXCEPT_OP(_Left.swap(_Right)))
 
template<class _Ty , size_t _Size>
bool operator== (const array< _Ty, _Size > &_Left, const array< _Ty, _Size > &_Right)
 
template<class _Ty , size_t _Size>
bool operator!= (const array< _Ty, _Size > &_Left, const array< _Ty, _Size > &_Right)
 
template<class _Ty , size_t _Size>
bool operator< (const array< _Ty, _Size > &_Left, const array< _Ty, _Size > &_Right)
 
template<class _Ty , size_t _Size>
bool operator> (const array< _Ty, _Size > &_Left, const array< _Ty, _Size > &_Right)
 
template<class _Ty , size_t _Size>
bool operator<= (const array< _Ty, _Size > &_Left, const array< _Ty, _Size > &_Right)
 
template<class _Ty , size_t _Size>
bool operator>= (const array< _Ty, _Size > &_Left, const array< _Ty, _Size > &_Right)
 
template<size_t _Idx, class _Ty , size_t _Size>
constexpr _Ty & get (array< _Ty, _Size > &_Arr) _NOEXCEPT
 
template<size_t _Idx, class _Ty , size_t _Size>
constexpr const _Ty & get (const array< _Ty, _Size > &_Arr) _NOEXCEPT
 
template<size_t _Idx, class _Ty , size_t _Size>
constexpr _Ty && get (array< _Ty, _Size > &&_Arr) _NOEXCEPT
 
template<size_t _Idx, class _Ty , size_t _Size>
constexpr const _Ty && get (const array< _Ty, _Size > &&_Arr) _NOEXCEPT
 

Macro Definition Documentation

#define _ARRAY_

Function Documentation

template<size_t _Idx, class _Ty , size_t _Size>
constexpr _Ty& get ( array< _Ty, _Size > &  _Arr)
488  { // return element at _Idx in array _Arr
489  static_assert(_Idx < _Size, "array index out of bounds");
490  return (_Arr._Elems[_Idx]);
491  }
_CRT_BEGIN_C_HEADER _Check_return_ _Ret_maybenull_ _In_ size_t _Size
Definition: corecrt_malloc.h:58
_Ty _Elems[_Size]
Definition: array:220
template<size_t _Idx, class _Ty , size_t _Size>
constexpr const _Ty& get ( const array< _Ty, _Size > &  _Arr)
497  { // return element at _Idx in array _Arr
498  static_assert(_Idx < _Size, "array index out of bounds");
499  return (_Arr._Elems[_Idx]);
500  }
_CRT_BEGIN_C_HEADER _Check_return_ _Ret_maybenull_ _In_ size_t _Size
Definition: corecrt_malloc.h:58
_Ty _Elems[_Size]
Definition: array:220
template<size_t _Idx, class _Ty , size_t _Size>
constexpr _Ty&& get ( array< _Ty, _Size > &&  _Arr)
506  { // return element at _Idx in array _Arr
507  static_assert(_Idx < _Size, "array index out of bounds");
508  return (_STD move(_Arr._Elems[_Idx]));
509  }
_CRT_BEGIN_C_HEADER _Check_return_ _Ret_maybenull_ _In_ size_t _Size
Definition: corecrt_malloc.h:58
_Ty _Elems[_Size]
Definition: array:220
constexpr remove_reference< _Ty >::type && move(_Ty &&_Arg) _NOEXCEPT
Definition: type_traits:1349
template<size_t _Idx, class _Ty , size_t _Size>
constexpr const _Ty&& get ( const array< _Ty, _Size > &&  _Arr)
515  { // return element at _Idx in array _Arr
516  static_assert(_Idx < _Size, "array index out of bounds");
517  return (_STD move(_Arr._Elems[_Idx]));
518  }
_CRT_BEGIN_C_HEADER _Check_return_ _Ret_maybenull_ _In_ size_t _Size
Definition: corecrt_malloc.h:58
_Ty _Elems[_Size]
Definition: array:220
constexpr remove_reference< _Ty >::type && move(_Ty &&_Arg) _NOEXCEPT
Definition: type_traits:1349
template<class _Ty , size_t _Size>
bool operator!= ( const array< _Ty, _Size > &  _Left,
const array< _Ty, _Size > &  _Right 
)
446  { // test for array inequality
447  return (!(_Left == _Right));
448  }
template<class _Ty , size_t _Size>
bool operator< ( const array< _Ty, _Size > &  _Left,
const array< _Ty, _Size > &  _Right 
)
454  { // test if _Left < _Right for arrays
455  return (_STD lexicographical_compare(_Left.begin(), _Left.end(),
456  _Right.begin(), _Right.end()));
457  }
iterator begin() _NOEXCEPT
Definition: array:58
iterator end() _NOEXCEPT
Definition: array:68
bool lexicographical_compare(_InIt1 _First1, _InIt1 _Last1, _InIt2 _First2, _InIt2 _Last2)
Definition: memory:830
template<class _Ty , size_t _Size>
bool operator<= ( const array< _Ty, _Size > &  _Left,
const array< _Ty, _Size > &  _Right 
)
471  { // test if _Left <= _Right for arrays
472  return (!(_Right < _Left));
473  }
template<class _Ty , size_t _Size>
bool operator== ( const array< _Ty, _Size > &  _Left,
const array< _Ty, _Size > &  _Right 
)
438  { // test for array equality
439  return (_STD equal(_Left.begin(), _Left.end(), _Right.begin()));
440  }
iterator begin() _NOEXCEPT
Definition: array:58
bool equal(_InIt1 _First1, _InIt1 _Last1, _InIt2 _First2)
Definition: memory:611
iterator end() _NOEXCEPT
Definition: array:68
template<class _Ty , size_t _Size>
bool operator> ( const array< _Ty, _Size > &  _Left,
const array< _Ty, _Size > &  _Right 
)
463  { // test if _Left > _Right for arrays
464  return (_Right < _Left);
465  }
template<class _Ty , size_t _Size>
bool operator>= ( const array< _Ty, _Size > &  _Left,
const array< _Ty, _Size > &  _Right 
)
479  { // test if _Left >= _Right for arrays
480  return (!(_Left < _Right));
481  }
template<class _Ty , size_t _Size, class = enable_if_t<_Size == 0 || _Is_swappable<_Ty>::value>>
void swap ( array< _Ty, _Size > &  _Left,
array< _Ty, _Size > &  _Right 
)
430  { // swap arrays
431  return (_Left.swap(_Right));
432  }
void swap(_Myt &_Other) _NOEXCEPT_OP(_Is_nothrow_swappable< _Ty >
Definition: array:50