std::basic_string<CharT,Traits,Allocator>:: npos
| Classes | ||||
|
(C++17)
|
||||
|
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
static
const
size_type npos
=
-
1
;
|
||
Este es un valor especial igual al valor máximo representable por el tipo
size_type
. El significado exacto depende del contexto, pero generalmente se utiliza como indicador de fin de cadena por las funciones que esperan un índice de cadena o como indicador de error por las funciones que devuelven un índice de cadena.
Nota
Aunque la definición utiliza
-
1
,
size_type
es un tipo entero sin signo, y el valor de
npos
es el valor positivo más grande que puede contener, debido a la
conversión implícita de signado a no signado
. Esta es una forma portable de especificar el valor máximo de cualquier tipo sin signo.
Ejemplo
#include <bitset> #include <iostream> #include <string> int main() { // las funciones de búsqueda en strings retornan npos si no se encuentra nada std::string s = "test"; if (s.find('a') == s.npos) std::cout << "no 'a' in 'test'\n"; // las funciones que toman subconjuntos de strings como argumentos // usan npos como indicador "hasta el final" std::string s2(s, 2, std::string::npos); std::cout << s2 << '\n'; std::bitset<5> b("aaabb", std::string::npos, 'a', 'b'); std::cout << b << '\n'; }
Salida:
no 'a' in 'test' st 00011
Véase también
|
[static]
|
valor especial. El significado exacto depende del contexto
(constante de miembro público estático de
std::basic_string_view<CharT,Traits>
)
|