Espacios de nombres
Variantes
Acciones

Diferencia entre revisiones de «cpp/string»

De cppreference.com
< cpp
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 soporte para tres tipos generales de cadenas:
+
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}}
  
===Soporte adicional===
+
===adicional===
 
===={{rl| char_traits}}====
 
===={{rl| char_traits}}====
La biblioteca de cadenas también ofrece la plantilla de clase {{rlt|char_traits}}, la cual define los tipos y funciones de {{lc|std::basic_string}} y de {{lc|std::basic_string_view}}. Están definidas las siguientes especializaciones:
+
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 soporte 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}}).
+
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_view

La 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:

Definido en el archivo de encabezado <string>
Tipo Definición
std::string_view (desde C++17) std::basic_string_view<char>
std::wstring_view (desde C++17) std::basic_string_view<wchar_t>
std::u8string_view (desde C++20) std::basic_string_view<char8_t>
std::u16string_view (desde C++17) std::basic_string_view<char16_t>
std::u32string_view (desde C++17) std::basic_string_view<char32_t>
(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:

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