char_traits Struct Template Reference
Base class used to implement
std::char_traits.
More...
List of all members.
Public Types
Static Public Member Functions
-
static char_type * assign (char_type *__s, std::size_t __n, char_type __a)
-
static void assign (char_type &__c1, const char_type &__c2)
-
static int compare (const char_type *__s1, const char_type *__s2, std::size_t __n)
-
static char_type * copy (char_type *__s1, const char_type *__s2, std::size_t __n)
-
static int_type eof ()
-
static bool eq (const char_type &__c1, const char_type &__c2)
-
static bool eq_int_type (const int_type &__c1, const int_type &__c2)
-
static const char_type * find (const char_type *__s, std::size_t __n, const char_type &__a)
-
static std::size_t length (const char_type *__s)
-
static bool lt (const char_type &__c1, const char_type &__c2)
-
static char_type * move (char_type *__s1, const char_type *__s2, std::size_t __n)
-
static int_type not_eof (const int_type &__c)
-
static char_type to_char_type (const int_type &__c)
-
static int_type to_int_type (const char_type &__c)
Detailed Description
template<typename _CharT>
struct __gnu_cxx::char_traits< _CharT >
- Note:
- For any given actual character type, this definition is probably wrong. (Most of the member functions are likely to be right, but the int_type and state_type typedefs, and the eof() member function, are likely to be wrong.) The reason this class exists is so users can specialize it. Classes in namespace std may not be specialized for fundamentl types, but classes in namespace __gnu_cxx may be.
See
http://gcc.gnu.org/onlinedocs/libstdc++/21_strings/howto.html#5 for advice on how to make use of this class for "unusual"
character types. Also, check out
include/ext/pod_char_traits.h.
Definition at line 87 of file char_traits.h.
The documentation for this struct was generated from the following file: