Ejemplos de aplicación y análisis del código fuente de boost::basic_string_view

Ejemplos de aplicación y análisis del código fuente de boost::basic_string_view

En el estándar C++ 11, se agrega una nueva plantilla de clase std::string_view para reemplazar la conversión entre std::string y const char * en C++03. También hay una plantilla de clase similar boost::basic_string_view en la biblioteca de boost. Este artículo mostrará su uso básico y su implementación interna a través de algunos programas de prueba.

  1. uso básico

La plantilla de clase boost::basic_string_view se define de la siguiente manera:

plantilla<clase CharT, clase Rasgos = std::char_traits>
clase basic_string_view;

Contiene dos parámetros de plantilla: CharT representa el tipo de carácter y Traits representa las características del personaje. Por lo general, no es necesario especificar Traits y se puede usar el valor predeterminado std::char_traits.

Podemos crear una vista de cadena y generar su longitud con el siguiente código:

#include
#incluye <boost/utility/string_view.hpp>

int main()
{ boost::string_view str_view(“hola mundo”); std::cout << "longitud de vista de cadena: " << str_view.length() << std::endl; devolver 0; }



El resultado de la operación es:

longitud de la vista de cadena: 12

  1. Comparando std::string y boost::basic_string_view

Aquí hay una manera de combinar std::string y boost::basi

Supongo que te gusta

Origin blog.csdn.net/qq_37934722/article/details/132485035
Recomendado
Clasificación