Język C++
basic_string::npos
[stały obiekt statyczny] Specjalna wartość, której znaczenie jest zależne od kontekstu.Składnia
#include <string>
namespace std
{
template <
class TypZnaku,
class CechowanieZnakow = char_traits < TypZnaku >,
class Alokator = allocator < TypZnaku >
>
class basic_string
{
private:
typedef basic_string < TypZnaku, CechowanieZnakow, Alokator > UtworzonaKlasaT;
public:
static const size_type npos;
};
template <
class TypZnaku,
class CechowanieZnakow = char_traits < TypZnaku >,
class Alokator = allocator < TypZnaku >
>
const size_type UtworzonaKlasaT::npos = - 1;
}
Opis szczegółowy
Wartość specjalna równa maksymalnej wartości zmiennej typu
std::string::size_type
. Jej znaczenie jest zależne od kontekstu, w jakim się jej używa. Ogólnie oznacza informację o braku znalezionego dopasowania przy wyszukiwaniu oraz wszystkie pozostałe znaki przy określaniu długości danego stringa.
Przykład
#include <iostream>
#include <string>
typedef std::basic_string < char, std::char_traits < char >, std::allocator < char >> MojString;
int main()
{
MojString str( "Jan" );
if( str.find( 'x' ) == MojString::npos )
std::cout << "Nie znaleziono znaku 'x'!\n";
str.replace( 1, MojString::npos, "as" );
std::cout << str;
return 0;
}
Standardowe wyjście programu:
Nie znaleziono znaku 'x'!
Jas
Linki zewnętrzne
Wszystkie teksty są chronione prawami autorskimi. Kopiowanie lub rozpowszechnianie treści poza niniejszym serwisem
jest zabronione.
Powyższe ograniczenie nie dotyczy autora opracowania, któremu przysługuje prawo do rozpowszechniania własnego tekstu wedle własnego uznania.