STD::CHAR_TRAITS(3cxx)
πΈ NAME πΈ
okay bestie, this is the manual page for std::char_traits< _CharT >(3cxx) β manual name folded in near the top, no duplicated header line needed π. The actual name is std::char_traits< _CharT >, and it is the Basis for explicit traits specializations. periodt.
β¨ SYNOPSIS β¨
Start with this lil include, bestie:
#include <string>
Then the family-tree tea:
- Inherits
__gnu_cxx::char_traits< _CharT >. - Inherited by
__gnu_cxx::encoding_char_traits< _CharT >.
π«Ά Public Types π«Ά
the whole type squad:
typedef _CharT char_typeusing comparison_category = std::strong_orderingtypedef _Char_types< _CharT >::int_type int_typetypedef _Char_types< _CharT >::off_type off_typetypedef _Char_types< _CharT >::pos_type pos_typetypedef _Char_types< _CharT >::state_type state_type
π Static Public Member Functions π
the function lineup:
static constexpr void assign (char_type &__c1, const char_type &__c2)static constexpr char_type * assign (char_type *__s, std::size_t __n, char_type __a)static constexpr int compare (const char_type *__s1, const char_type *__s2, std::size_t __n)static constexpr char_type * copy (char_type *__s1, const char_type *__s2, std::size_t __n)static constexpr bool eq (const char_type &__c1, const char_type &__c2)static constexpr bool eq_int_type (const int_type &__c1, const int_type &__c2)static constexpr const char_type * find (const char_type *__s, std::size_t __n, const char_type &__a)static constexpr std::size_t length (const char_type *__s)static constexpr bool lt (const char_type &__c1, const char_type &__c2)static constexpr char_type * move (char_type *__s1, const char_type *__s2, std::size_t __n)static constexpr char_type to_char_type (const int_type &__c)static constexpr int_type to_int_type (const char_type &__c)
π Detailed Description π
template<typename _CharT>
struct std::char_traits< _CharT >
Basis for explicit traits specializations.
Note, bestie: For any given actual character type, this definition is probably wrong. Since this is just a thin wrapper around__gnu_cxx::char_traits, it is possible to achieve a more appropriate definition by specializing__gnu_cxx::char_traits.
See: https://gcc.gnu.org/onlinedocs/libstdc++/manual/strings.html#strings.string.character_types for advice on how to make use of this class for unusual character types. Also, check out include/ext/pod_string.
tiny detail for the detail girlies: the original has a stray quote gremlin right before βBasisβ β struct std::char_traits< _CharT >"Basis for explicit traits specializations. β keeping it in the mix π.
π Author π
Generated automatically by Doxygen for libstdc++ from the source code. slay, Doxygen.
π cute sign-off: source/version is libstdc++, page is std::char_traits< _CharT >(3cxx) β no date on this footer, just clean libstdc++ energy and a cute exit. π
π¦ where this page comes from
- ubuntu noble: libstdc++-14-doc 14-20240412-0ubuntu1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms