Diferencia entre revisiones de «cpp/string»
m (Mejoras en redacción) |
m (s/soporte/apoyo) |
||
Línea 2: | Línea 2: | ||
{{cpp/string/navbar}} | {{cpp/string/navbar}} | ||
− | La biblioteca de cadenas de C++ incluye | + | La biblioteca de cadenas de C++ incluye para tres tipos generales de cadenas: |
* {{lc|std::basic_string}} - Una plantilla de clase diseñada para manipular cadenas de cualquier tipo de caracteres. | * {{lc|std::basic_string}} - Una plantilla de clase diseñada para manipular cadenas de cualquier tipo de caracteres. | ||
Línea 50: | Línea 50: | ||
* {{rl | wide | cadenas de caracteres anchos terminadas en nulo}} | * {{rl | wide | cadenas de caracteres anchos terminadas en nulo}} | ||
− | === | + | ===adicional=== |
===={{rl| char_traits}}==== | ===={{rl| char_traits}}==== | ||
− | La biblioteca de cadenas también ofrece la plantilla de clase {{rlt|char_traits}}, | + | La biblioteca de cadenas también ofrece la plantilla de clase {{rlt|char_traits}}, define los tipos y funciones de {{lc|std::basic_string}} y de {{lc|std::basic_string_view}}. las siguientes especializaciones: |
{{dcl begin}} | {{dcl begin}} | ||
Línea 63: | Línea 63: | ||
{{dcl end}} | {{dcl end}} | ||
− | La biblioteca de [[cpp/locale|localizaciones]] proporciona | + | La biblioteca de [[cpp/locale|localizaciones]] proporciona para conversiones de cadena (p. ej., {{c|std::wstring_convert}} o {{c|std::toupper}}) así como funciones que clasifican caracteres (p. ej., {{c|std::isspace}} o {{c|std::isdigit}}). |
===Véase también=== | ===Véase también=== |
Revisión de 10:19 30 may 2024
La biblioteca de cadenas de C++ incluye apoyo para tres tipos generales de cadenas:
- std::basic_string - Una plantilla de clase diseñada para manipular cadenas de cualquier tipo de caracteres.
- std::basic_string_view (C++17) - Una vista sobre una subsecuencia de una cadena, ligera, que no posee los caracteres, y de sólo lectura.
- Cadenas terminadas en nulo - Arrays de caracteres terminados por un carácter especial nulo.
Contenido |
std::basic_string
La plantilla de clase std::basic_string generaliza cómo secuencias de caracteres son manipuladas y almacenadas. La creación, manipulación y destrucción de cadenas se maneja por un conjunto conveniente de métodos de clase y funciones relacionadas.
Se proporcionan varias especializaciones de std::basic_string para los tipos más comúnmente usados:
Definido en el archivo de encabezado
<string> | |
Tipo | Definición |
std::string | std::basic_string<char> |
std::wstring | std::basic_string<wchar_t> |
std::u8string (desde C++20) | std::basic_string<char8_t> |
std::u16string (desde C++11) | std::basic_string<char16_t> |
std::u32string (desde C++11) | std::basic_string<char32_t> |
std::basic_string_viewLa plantilla de clase std::basic_string_view proporciona un objeto ligero que ofrece acceso de sólo lectura a una cadena o parte de una cadena usando una interfaz similar a la interfaz de std::basic_string. Se proporcionan varias especializaciones de std::basic_string_view para los tipos más comúnmente usados:
|
(desde C++17) |
Cadenas terminadas en nulo
Las cadenas terminadas en nulo son arrays de caracteres que terminan con un carácter especial nulo. C++ proporciona funciones para crear, inspeccionar y modificar cadenas terminadas en nulo
Hay tres tipos de cadenas terminadas en nulo:
- cadenas de bytes terminadas en nulo
- cadenas de multibytes terminadas en nulo
- cadenas de caracteres anchos terminadas en nulo
Apoyo adicional
char_traits
La biblioteca de cadenas también ofrece la plantilla de clase char_traits
, que define los tipos y funciones de std::basic_string y de std::basic_string_view. Se definen las siguientes especializaciones:
Definido en el archivo de encabezado <string>
|
||
template<> class char_traits<char>; |
||
template<> class char_traits<wchar_t>; |
||
template<> class char_traits<char8_t>; |
(desde C++20) | |
template<> class char_traits<char16_t>; |
(desde C++11) | |
template<> class char_traits<char32_t>; |
(desde C++11) | |
La biblioteca de localizaciones proporciona apoyo para conversiones de cadena (p. ej., std::wstring_convert o std::toupper) así como funciones que clasifican caracteres (p. ej., std::isspace o std::isdigit).
Véase también
Documentación de C++ para Biblioteca de localización
| |
Documentación de C para Biblioteca de cadenas
|