STLdoc
STLdocumentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Classes | Macros | Typedefs | Functions
xstring File Reference
#include <xmemory0>

Classes

class  basic_string< _Elem, _Traits, _Alloc >
 
class  _String_const_iterator< _Mystr >
 
class  _String_iterator< _Mystr >
 
struct  _String_iter_types< _Value_type, _Size_type, _Difference_type, _Pointer, _Const_pointer, _Reference, _Const_reference >
 
struct  _String_base_types< _Ty, _Alloc0 >
 
class  _String_val< _Val_types >
 
union  _String_val< _Val_types >::_Bxty
 
class  _String_alloc< _Al_has_storage, _Alloc_types >
 
class  _String_alloc< false, _Alloc_types >
 
class  basic_string< _Elem, _Traits, _Alloc >
 
struct  hash< basic_string< _Elem, _Traits, _Alloc > >
 

Macros

#define _XSTRING_
 
#define _STRING_ITER_BASE(it)   (it)._Ptr
 
#define _STRING_CONST_ITERATOR(ptr)   const_iterator(ptr, this)
 
#define _STRING_ITERATOR(ptr)   iterator(ptr, this)
 

Typedefs

typedef basic_string< char, char_traits< char >, allocator< char > > string
 
typedef basic_string< wchar_t, char_traits< wchar_t >, allocator< wchar_t > > wstring
 
typedef basic_string< char16_t, char_traits< char16_t >, allocator< char16_t > > u16string
 
typedef basic_string< char32_t, char_traits< char32_t >, allocator< char32_t > > u32string
 

Functions

template<class _Mystr >
_String_const_iterator< _Mystr >::_Unchecked_type _Unchecked (_String_const_iterator< _Mystr > _Iter)
 
template<class _Mystr >
_String_const_iterator< _Mystr > _Rechecked (_String_const_iterator< _Mystr > &_Iter, typename _String_const_iterator< _Mystr >::_Unchecked_type _Right)
 
template<class _Mystr >
_String_const_iterator< _Mystr > operator+ (typename _String_const_iterator< _Mystr >::difference_type _Off, _String_const_iterator< _Mystr > _Next)
 
template<class _Mystr >
_String_iterator< _Mystr >::_Unchecked_type _Unchecked (_String_iterator< _Mystr > _Iter)
 
template<class _Mystr >
_String_iterator< _Mystr > _Rechecked (_String_iterator< _Mystr > &_Iter, typename _String_iterator< _Mystr >::_Unchecked_type _Right)
 
template<class _Mystr >
_String_iterator< _Mystr > operator+ (typename _String_iterator< _Mystr >::difference_type _Off, _String_iterator< _Mystr > _Next)
 
template<class _Elem , class _Traits , class _Alloc >
void swap (basic_string< _Elem, _Traits, _Alloc > &_Left, basic_string< _Elem, _Traits, _Alloc > &_Right)
 
template<class _Elem , class _Traits , class _Alloc >
basic_string< _Elem, _Traits, _Alloc > operator+ (const basic_string< _Elem, _Traits, _Alloc > &_Left, const basic_string< _Elem, _Traits, _Alloc > &_Right)
 
template<class _Elem , class _Traits , class _Alloc >
basic_string< _Elem, _Traits, _Alloc > operator+ (const _Elem *_Left, const basic_string< _Elem, _Traits, _Alloc > &_Right)
 
template<class _Elem , class _Traits , class _Alloc >
basic_string< _Elem, _Traits, _Alloc > operator+ (const _Elem _Left, const basic_string< _Elem, _Traits, _Alloc > &_Right)
 
template<class _Elem , class _Traits , class _Alloc >
basic_string< _Elem, _Traits, _Alloc > operator+ (const basic_string< _Elem, _Traits, _Alloc > &_Left, const _Elem *_Right)
 
template<class _Elem , class _Traits , class _Alloc >
basic_string< _Elem, _Traits, _Alloc > operator+ (const basic_string< _Elem, _Traits, _Alloc > &_Left, const _Elem _Right)
 
template<class _Elem , class _Traits , class _Alloc >
basic_string< _Elem, _Traits, _Alloc > operator+ (const basic_string< _Elem, _Traits, _Alloc > &_Left, basic_string< _Elem, _Traits, _Alloc > &&_Right)
 
template<class _Elem , class _Traits , class _Alloc >
basic_string< _Elem, _Traits, _Alloc > operator+ (basic_string< _Elem, _Traits, _Alloc > &&_Left, const basic_string< _Elem, _Traits, _Alloc > &_Right)
 
template<class _Elem , class _Traits , class _Alloc >
basic_string< _Elem, _Traits, _Alloc > operator+ (basic_string< _Elem, _Traits, _Alloc > &&_Left, basic_string< _Elem, _Traits, _Alloc > &&_Right)
 
template<class _Elem , class _Traits , class _Alloc >
basic_string< _Elem, _Traits, _Alloc > operator+ (const _Elem *_Left, basic_string< _Elem, _Traits, _Alloc > &&_Right)
 
template<class _Elem , class _Traits , class _Alloc >
basic_string< _Elem, _Traits, _Alloc > operator+ (const _Elem _Left, basic_string< _Elem, _Traits, _Alloc > &&_Right)
 
template<class _Elem , class _Traits , class _Alloc >
basic_string< _Elem, _Traits, _Alloc > operator+ (basic_string< _Elem, _Traits, _Alloc > &&_Left, const _Elem *_Right)
 
template<class _Elem , class _Traits , class _Alloc >
basic_string< _Elem, _Traits, _Alloc > operator+ (basic_string< _Elem, _Traits, _Alloc > &&_Left, const _Elem _Right)
 
template<class _Elem , class _Traits , class _Alloc >
bool operator== (const basic_string< _Elem, _Traits, _Alloc > &_Left, const basic_string< _Elem, _Traits, _Alloc > &_Right)
 
template<class _Elem , class _Traits , class _Alloc >
bool operator== (const _Elem *_Left, const basic_string< _Elem, _Traits, _Alloc > &_Right)
 
template<class _Elem , class _Traits , class _Alloc >
bool operator== (const basic_string< _Elem, _Traits, _Alloc > &_Left, const _Elem *_Right)
 
template<class _Elem , class _Traits , class _Alloc >
bool operator!= (const basic_string< _Elem, _Traits, _Alloc > &_Left, const basic_string< _Elem, _Traits, _Alloc > &_Right)
 
template<class _Elem , class _Traits , class _Alloc >
bool operator!= (const _Elem *_Left, const basic_string< _Elem, _Traits, _Alloc > &_Right)
 
template<class _Elem , class _Traits , class _Alloc >
bool operator!= (const basic_string< _Elem, _Traits, _Alloc > &_Left, const _Elem *_Right)
 
template<class _Elem , class _Traits , class _Alloc >
bool operator< (const basic_string< _Elem, _Traits, _Alloc > &_Left, const basic_string< _Elem, _Traits, _Alloc > &_Right)
 
template<class _Elem , class _Traits , class _Alloc >
bool operator< (const _Elem *_Left, const basic_string< _Elem, _Traits, _Alloc > &_Right)
 
template<class _Elem , class _Traits , class _Alloc >
bool operator< (const basic_string< _Elem, _Traits, _Alloc > &_Left, const _Elem *_Right)
 
template<class _Elem , class _Traits , class _Alloc >
bool operator> (const basic_string< _Elem, _Traits, _Alloc > &_Left, const basic_string< _Elem, _Traits, _Alloc > &_Right)
 
template<class _Elem , class _Traits , class _Alloc >
bool operator> (const _Elem *_Left, const basic_string< _Elem, _Traits, _Alloc > &_Right)
 
template<class _Elem , class _Traits , class _Alloc >
bool operator> (const basic_string< _Elem, _Traits, _Alloc > &_Left, const _Elem *_Right)
 
template<class _Elem , class _Traits , class _Alloc >
bool operator<= (const basic_string< _Elem, _Traits, _Alloc > &_Left, const basic_string< _Elem, _Traits, _Alloc > &_Right)
 
template<class _Elem , class _Traits , class _Alloc >
bool operator<= (const _Elem *_Left, const basic_string< _Elem, _Traits, _Alloc > &_Right)
 
template<class _Elem , class _Traits , class _Alloc >
bool operator<= (const basic_string< _Elem, _Traits, _Alloc > &_Left, const _Elem *_Right)
 
template<class _Elem , class _Traits , class _Alloc >
bool operator>= (const basic_string< _Elem, _Traits, _Alloc > &_Left, const basic_string< _Elem, _Traits, _Alloc > &_Right)
 
template<class _Elem , class _Traits , class _Alloc >
bool operator>= (const _Elem *_Left, const basic_string< _Elem, _Traits, _Alloc > &_Right)
 
template<class _Elem , class _Traits , class _Alloc >
bool operator>= (const basic_string< _Elem, _Traits, _Alloc > &_Left, const _Elem *_Right)
 

Macro Definition Documentation

#define _STRING_CONST_ITERATOR (   ptr)    const_iterator(ptr, this)
#define _STRING_ITER_BASE (   it)    (it)._Ptr
#define _STRING_ITERATOR (   ptr)    iterator(ptr, this)
#define _XSTRING_

Typedef Documentation

typedef basic_string<char, char_traits<char>, allocator<char> > string

Function Documentation

template<class _Mystr >
_String_const_iterator<_Mystr> _Rechecked ( _String_const_iterator< _Mystr > &  _Iter,
typename _String_const_iterator< _Mystr >::_Unchecked_type  _Right 
)
inline
283  { // convert to checked
284  return (_Iter._Rechecked(_Right));
285  }
_Myiter & _Rechecked(_Unchecked_type _Right)
Definition: xstring:59
const _Ty & _Right
Definition: algorithm:4087
template<class _Mystr >
_String_iterator<_Mystr> _Rechecked ( _String_iterator< _Mystr > &  _Iter,
typename _String_iterator< _Mystr >::_Unchecked_type  _Right 
)
inline
415  { // convert to checked
416  return (_Iter._Rechecked(_Right));
417  }
_Myiter & _Rechecked(_Unchecked_type _Right)
Definition: xstring:322
const _Ty & _Right
Definition: algorithm:4087
template<class _Mystr >
_String_const_iterator<_Mystr>::_Unchecked_type _Unchecked ( _String_const_iterator< _Mystr >  _Iter)
inline
274  { // convert to unchecked
275  return (_Iter._Unchecked());
276  }
_Unchecked_type _Unchecked() const
Definition: xstring:65
template<class _Mystr >
_String_iterator<_Mystr>::_Unchecked_type _Unchecked ( _String_iterator< _Mystr >  _Iter)
inline
406  { // convert to unchecked
407  return (_Iter._Unchecked());
408  }
_Unchecked_type _Unchecked() const
Definition: xstring:328
template<class _Elem , class _Traits , class _Alloc >
bool operator!= ( const basic_string< _Elem, _Traits, _Alloc > &  _Left,
const basic_string< _Elem, _Traits, _Alloc > &  _Right 
)
inline
2498  { // test for string inequality
2499  return (!(_Left == _Right));
2500  }
template<class _Elem , class _Traits , class _Alloc >
bool operator!= ( const _Elem *  _Left,
const basic_string< _Elem, _Traits, _Alloc > &  _Right 
)
inline
2508  { // test for NTCS vs. string inequality
2509  return (!(_Left == _Right));
2510  }
template<class _Elem , class _Traits , class _Alloc >
bool operator!= ( const basic_string< _Elem, _Traits, _Alloc > &  _Left,
const _Elem *  _Right 
)
inline
2518  { // test for string vs. NTCS inequality
2519  return (!(_Left == _Right));
2520  }
const _Ty & _Right
Definition: algorithm:4087
template<class _Mystr >
_String_const_iterator<_Mystr> operator+ ( typename _String_const_iterator< _Mystr >::difference_type  _Off,
_String_const_iterator< _Mystr >  _Next 
)
inline
292  { // add offset to iterator
293  return (_Next += _Off);
294  }
template<class _Mystr >
_String_iterator<_Mystr> operator+ ( typename _String_iterator< _Mystr >::difference_type  _Off,
_String_iterator< _Mystr >  _Next 
)
inline
424  { // add offset to iterator
425  return (_Next += _Off);
426  }
template<class _Elem , class _Traits , class _Alloc >
basic_string<_Elem, _Traits, _Alloc> operator+ ( const basic_string< _Elem, _Traits, _Alloc > &  _Left,
const basic_string< _Elem, _Traits, _Alloc > &  _Right 
)
inline
2324  { // return string + string
2326  _Ans.reserve(_Left.size() + _Right.size());
2327  _Ans += _Left;
2328  _Ans += _Right;
2329  return (_Ans);
2330  }
void reserve(size_type _Newcap=0)
Definition: xstring:1781
size_type size() const _NOEXCEPT
Definition: xstring:1752
Definition: xstring:21
const _Ty & _Right
Definition: algorithm:4087
template<class _Elem , class _Traits , class _Alloc >
basic_string<_Elem, _Traits, _Alloc> operator+ ( const _Elem *  _Left,
const basic_string< _Elem, _Traits, _Alloc > &  _Right 
)
inline
2338  { // return NTCS + string
2340  _Ans.reserve(_Traits::length(_Left) + _Right.size());
2341  _Ans += _Left;
2342  _Ans += _Right;
2343  return (_Ans);
2344  }
void reserve(size_type _Newcap=0)
Definition: xstring:1781
size_type size() const _NOEXCEPT
Definition: xstring:1752
Definition: xstring:21
const _Ty & _Right
Definition: algorithm:4087
template<class _Elem , class _Traits , class _Alloc >
basic_string<_Elem, _Traits, _Alloc> operator+ ( const _Elem  _Left,
const basic_string< _Elem, _Traits, _Alloc > &  _Right 
)
inline
2352  { // return character + string
2354  _Ans.reserve(1 + _Right.size());
2355  _Ans += _Left;
2356  _Ans += _Right;
2357  return (_Ans);
2358  }
void reserve(size_type _Newcap=0)
Definition: xstring:1781
size_type size() const _NOEXCEPT
Definition: xstring:1752
Definition: xstring:21
const _Ty & _Right
Definition: algorithm:4087
template<class _Elem , class _Traits , class _Alloc >
basic_string<_Elem, _Traits, _Alloc> operator+ ( const basic_string< _Elem, _Traits, _Alloc > &  _Left,
const _Elem *  _Right 
)
inline
2366  { // return string + NTCS
2368  _Ans.reserve(_Left.size() + _Traits::length(_Right));
2369  _Ans += _Left;
2370  _Ans += _Right;
2371  return (_Ans);
2372  }
void reserve(size_type _Newcap=0)
Definition: xstring:1781
size_type size() const _NOEXCEPT
Definition: xstring:1752
Definition: xstring:21
const _Ty & _Right
Definition: algorithm:4087
template<class _Elem , class _Traits , class _Alloc >
basic_string<_Elem, _Traits, _Alloc> operator+ ( const basic_string< _Elem, _Traits, _Alloc > &  _Left,
const _Elem  _Right 
)
inline
2380  { // return string + character
2382  _Ans.reserve(_Left.size() + 1);
2383  _Ans += _Left;
2384  _Ans += _Right;
2385  return (_Ans);
2386  }
void reserve(size_type _Newcap=0)
Definition: xstring:1781
size_type size() const _NOEXCEPT
Definition: xstring:1752
Definition: xstring:21
const _Ty & _Right
Definition: algorithm:4087
template<class _Elem , class _Traits , class _Alloc >
basic_string<_Elem, _Traits, _Alloc> operator+ ( const basic_string< _Elem, _Traits, _Alloc > &  _Left,
basic_string< _Elem, _Traits, _Alloc > &&  _Right 
)
inline
2394  { // return string + string
2395  return (_STD move(_Right.insert(0, _Left)));
2396  }
_OutIt move(_InIt _First, _InIt _Last, _OutIt _Dest)
Definition: xutility:2447
iterator insert(const_iterator _Where, _XSTD initializer_list< _Elem > _Ilist)
Definition: xstring:977
template<class _Elem , class _Traits , class _Alloc >
basic_string<_Elem, _Traits, _Alloc> operator+ ( basic_string< _Elem, _Traits, _Alloc > &&  _Left,
const basic_string< _Elem, _Traits, _Alloc > &  _Right 
)
inline
2404  { // return string + string
2405  return (_STD move(_Left.append(_Right)));
2406  }
_OutIt move(_InIt _First, _InIt _Last, _OutIt _Dest)
Definition: xutility:2447
_Myt & append(_XSTD initializer_list< _Elem > _Ilist)
Definition: xstring:972
template<class _Elem , class _Traits , class _Alloc >
basic_string<_Elem, _Traits, _Alloc> operator+ ( basic_string< _Elem, _Traits, _Alloc > &&  _Left,
basic_string< _Elem, _Traits, _Alloc > &&  _Right 
)
inline
2414  { // return string + string
2415  if (_Right.size() <= _Left.capacity() - _Left.size()
2416  || _Right.capacity() - _Right.size() < _Left.size())
2417  return (_STD move(_Left.append(_Right)));
2418  else
2419  return (_STD move(_Right.insert(0, _Left)));
2420  }
_OutIt move(_InIt _First, _InIt _Last, _OutIt _Dest)
Definition: xutility:2447
iterator insert(const_iterator _Where, _XSTD initializer_list< _Elem > _Ilist)
Definition: xstring:977
size_type size() const _NOEXCEPT
Definition: xstring:1752
_Myt & append(_XSTD initializer_list< _Elem > _Ilist)
Definition: xstring:972
size_type capacity() const _NOEXCEPT
Definition: xstring:1776
template<class _Elem , class _Traits , class _Alloc >
basic_string<_Elem, _Traits, _Alloc> operator+ ( const _Elem *  _Left,
basic_string< _Elem, _Traits, _Alloc > &&  _Right 
)
inline
2428  { // return NTCS + string
2429  return (_STD move(_Right.insert(0, _Left)));
2430  }
_OutIt move(_InIt _First, _InIt _Last, _OutIt _Dest)
Definition: xutility:2447
iterator insert(const_iterator _Where, _XSTD initializer_list< _Elem > _Ilist)
Definition: xstring:977
template<class _Elem , class _Traits , class _Alloc >
basic_string<_Elem, _Traits, _Alloc> operator+ ( const _Elem  _Left,
basic_string< _Elem, _Traits, _Alloc > &&  _Right 
)
inline
2438  { // return character + string
2439  return (_STD move(_Right.insert(0, 1, _Left)));
2440  }
_OutIt move(_InIt _First, _InIt _Last, _OutIt _Dest)
Definition: xutility:2447
iterator insert(const_iterator _Where, _XSTD initializer_list< _Elem > _Ilist)
Definition: xstring:977
template<class _Elem , class _Traits , class _Alloc >
basic_string<_Elem, _Traits, _Alloc> operator+ ( basic_string< _Elem, _Traits, _Alloc > &&  _Left,
const _Elem *  _Right 
)
inline
2448  { // return string + NTCS
2449  return (_STD move(_Left.append(_Right)));
2450  }
_OutIt move(_InIt _First, _InIt _Last, _OutIt _Dest)
Definition: xutility:2447
_Myt & append(_XSTD initializer_list< _Elem > _Ilist)
Definition: xstring:972
const _Ty & _Right
Definition: algorithm:4087
template<class _Elem , class _Traits , class _Alloc >
basic_string<_Elem, _Traits, _Alloc> operator+ ( basic_string< _Elem, _Traits, _Alloc > &&  _Left,
const _Elem  _Right 
)
inline
2458  { // return string + character
2459  return (_STD move(_Left.append(1, _Right)));
2460  }
_OutIt move(_InIt _First, _InIt _Last, _OutIt _Dest)
Definition: xutility:2447
_Myt & append(_XSTD initializer_list< _Elem > _Ilist)
Definition: xstring:972
const _Ty & _Right
Definition: algorithm:4087
template<class _Elem , class _Traits , class _Alloc >
bool operator< ( const basic_string< _Elem, _Traits, _Alloc > &  _Left,
const basic_string< _Elem, _Traits, _Alloc > &  _Right 
)
inline
2528  { // test if string < string
2529  return (_Left.compare(_Right) < 0);
2530  }
int compare(const _Myt &_Right) const _NOEXCEPT
Definition: xstring:2134
template<class _Elem , class _Traits , class _Alloc >
bool operator< ( const _Elem *  _Left,
const basic_string< _Elem, _Traits, _Alloc > &  _Right 
)
inline
2538  { // test if NTCS < string
2539  return (_Right.compare(_Left) > 0);
2540  }
int compare(const _Myt &_Right) const _NOEXCEPT
Definition: xstring:2134
template<class _Elem , class _Traits , class _Alloc >
bool operator< ( const basic_string< _Elem, _Traits, _Alloc > &  _Left,
const _Elem *  _Right 
)
inline
2548  { // test if string < NTCS
2549  return (_Left.compare(_Right) < 0);
2550  }
int compare(const _Myt &_Right) const _NOEXCEPT
Definition: xstring:2134
const _Ty & _Right
Definition: algorithm:4087
template<class _Elem , class _Traits , class _Alloc >
bool operator<= ( const basic_string< _Elem, _Traits, _Alloc > &  _Left,
const basic_string< _Elem, _Traits, _Alloc > &  _Right 
)
inline
2588  { // test if string <= string
2589  return (!(_Right < _Left));
2590  }
template<class _Elem , class _Traits , class _Alloc >
bool operator<= ( const _Elem *  _Left,
const basic_string< _Elem, _Traits, _Alloc > &  _Right 
)
inline
2598  { // test if NTCS <= string
2599  return (!(_Right < _Left));
2600  }
template<class _Elem , class _Traits , class _Alloc >
bool operator<= ( const basic_string< _Elem, _Traits, _Alloc > &  _Left,
const _Elem *  _Right 
)
inline
2608  { // test if string <= NTCS
2609  return (!(_Right < _Left));
2610  }
const _Ty & _Right
Definition: algorithm:4087
template<class _Elem , class _Traits , class _Alloc >
bool operator== ( const basic_string< _Elem, _Traits, _Alloc > &  _Left,
const basic_string< _Elem, _Traits, _Alloc > &  _Right 
)
inline
2468  { // test for string equality
2469  return (_Left.compare(_Right) == 0);
2470  }
int compare(const _Myt &_Right) const _NOEXCEPT
Definition: xstring:2134
template<class _Elem , class _Traits , class _Alloc >
bool operator== ( const _Elem *  _Left,
const basic_string< _Elem, _Traits, _Alloc > &  _Right 
)
inline
2478  { // test for NTCS vs. string equality
2479  return (_Right.compare(_Left) == 0);
2480  }
int compare(const _Myt &_Right) const _NOEXCEPT
Definition: xstring:2134
template<class _Elem , class _Traits , class _Alloc >
bool operator== ( const basic_string< _Elem, _Traits, _Alloc > &  _Left,
const _Elem *  _Right 
)
inline
2488  { // test for string vs. NTCS equality
2489  return (_Left.compare(_Right) == 0);
2490  }
int compare(const _Myt &_Right) const _NOEXCEPT
Definition: xstring:2134
const _Ty & _Right
Definition: algorithm:4087
template<class _Elem , class _Traits , class _Alloc >
bool operator> ( const basic_string< _Elem, _Traits, _Alloc > &  _Left,
const basic_string< _Elem, _Traits, _Alloc > &  _Right 
)
inline
2558  { // test if string > string
2559  return (_Right < _Left);
2560  }
template<class _Elem , class _Traits , class _Alloc >
bool operator> ( const _Elem *  _Left,
const basic_string< _Elem, _Traits, _Alloc > &  _Right 
)
inline
2568  { // test if NTCS > string
2569  return (_Right < _Left);
2570  }
template<class _Elem , class _Traits , class _Alloc >
bool operator> ( const basic_string< _Elem, _Traits, _Alloc > &  _Left,
const _Elem *  _Right 
)
inline
2578  { // test if string > NTCS
2579  return (_Right < _Left);
2580  }
const _Ty & _Right
Definition: algorithm:4087
template<class _Elem , class _Traits , class _Alloc >
bool operator>= ( const basic_string< _Elem, _Traits, _Alloc > &  _Left,
const basic_string< _Elem, _Traits, _Alloc > &  _Right 
)
inline
2618  { // test if string >= string
2619  return (!(_Left < _Right));
2620  }
template<class _Elem , class _Traits , class _Alloc >
bool operator>= ( const _Elem *  _Left,
const basic_string< _Elem, _Traits, _Alloc > &  _Right 
)
inline
2628  { // test if NTCS >= string
2629  return (!(_Left < _Right));
2630  }
template<class _Elem , class _Traits , class _Alloc >
bool operator>= ( const basic_string< _Elem, _Traits, _Alloc > &  _Left,
const _Elem *  _Right 
)
inline
2638  { // test if string >= NTCS
2639  return (!(_Left < _Right));
2640  }
const _Ty & _Right
Definition: algorithm:4087
template<class _Elem , class _Traits , class _Alloc >
void swap ( basic_string< _Elem, _Traits, _Alloc > &  _Left,
basic_string< _Elem, _Traits, _Alloc > &  _Right 
)
inline
2314  { // swap _Left and _Right strings
2315  _Left.swap(_Right);
2316  }
void swap(_Myt &_Right)
Definition: xstring:1856