std::string
Zdefiniowany w nagłówku: <string>
Implementowany przez: bibliotekę standardową [nie wymaga linkowania dodatkowych modułów]
Obiekty klasy std::string
to kontenery specjalizujące się w obsłudze i wykonywaniu operacji na sekwencjach znaków (char
).
Zastępują one tradycyjne, używane nałogowo w języku C, dynamiczne tablice znaków alokowane na stercie, dostarczając przy tym bardziej intuicyjnych metod operowania na ciągach.
W rzeczywistości typ string
jest jedynie specjalizacją szablonu:
typedef std::basic_string<char> string;
Oznacza to, że można się spodziewać istnienia "string'ów" opartych na czymś innym niż char
(patrz np. std::wstring
operujacy na wchar_t
) lub też - pisać własne specjalizacje.
Funkcje składowe
<dl>
Konstruktory, destruktory
<dt>
string::string</dt><dd></dd>
<dt>
string::~string</dt><dd></dd>
</dl>
Dostęp do zawartości
<dl>
Wprost
<dt>
string::at</dt><dd></dd>
<dt>
string::copy</dt><dd></dd>
<dt>
string::c_str</dt><dd></dd>
<dt>
string::data</dt><dd></dd>
<dt>
string::operator[] </dt><dd></dd>
<dt>
string::substr</dt><dd></dd>
</dl>
<dl>
Iteratory
<dt>
string::begin</dt><dd></dd>
<dt>
string::end</dt><dd></dd>
<dt>
string::rbegin</dt><dd></dd>
<dt>
string::rend</dt><dd></dd>
</dl>
Operacje na zawartości
<dl>
Informacyjne
<dt>
string::capacity</dt><dd></dd>
<dt>
string::compare</dt><dd></dd>
<dt>
string::empty</dt><dd></dd>
<dt>
string::find</dt><dd></dd>
<dt>
string::find_first_not_of</dt><dd></dd>
<dt>
string::find_first_of</dt><dd></dd>
<dt>
string::find_last_not_of</dt><dd></dd>
<dt>
string::find_last_of</dt><dd></dd>
<dt>
string::get_allocator</dt><dd></dd>
<dt>
string::length</dt><dd></dd>
<dt>
string::max_size</dt><dd></dd>
<dt>
string::rfind</dt><dd></dd>
<dt>
string::size</dt><dd></dd>
</dl>
<dl>
Modyfikujące
<dt>
string::append</dt><dd></dd>
<dt>
string::assign</dt><dd></dd>
<dt>
string::at</dt><dd></dd>
<dt>
string::clear</dt><dd></dd>
<dt>
string::erase</dt><dd></dd>
<dt>
string::insert</dt><dd></dd>
<dt>
string::operator=</dt><dd></dd>
<dt>
string::operator+=</dt><dd></dd>
<dt>
string::operator[] </dt><dd></dd>
<dt>
string::push_back</dt><dd></dd>
<dt>
string::replace</dt><dd></dd>
<dt>
string::reserve</dt><dd></dd>
<dt>
string::resize</dt><dd></dd>
<dt>
string::swap</dt><dd></dd>
</dl>
<dl>
Inne definicje
<dt>
std::getline</dt><dd></dd>
<dt>
operator<</dt><dd></dd>
</dl>
Trzeba by to jakoś iporządkować ( String )
hmm... ale jesli beda wrzucone na glowna C/ to wtedy bardzo szybko zaczna sie kolizje opisow metod np z vectorem, lista itp..?
dobra.. czegos nie kumam.. wywalilo mi juz drugi artykul na "roota", czyli np. /Empty, /Capacity.. WTF? ja je teraz tylko edytowalem, a teraz musze odtwarzac albo przenosic..
super.. nie idzie przeniesc..
quetzalcoatl: obecnie teksty są w tej kategorii, za to w kat. głównej C ich nie ma. Proponuję, aby znalazły się one w kategorii C i dodatkowo zostały przypisane do tej kategorii (czyli opcja "Przenieś" poszczególnych artów bez opcji "Ustaw przekierowanie", a następnie edycja i dodanie {{Cat:C/Biblioteka_standardowa/STL/String}} ).