Қатысушы:Meruyert2107/зертхана

String (C++)

String  - C ++ бағдарламалау тіліндегі жолдармен жұмысты ұйымдастыруға арналған әдістері мен айнымалылары бар класс. Ол стандартты C ++ кітапханасына енгізілген. Оның атауы жолдар типінің атынан жасалған ағылшынша - «string» - "жол"). C ++ және оның алдындағы, C бағдарламалау тілінде, деректер түрі үшін бекітілген тірек жоқ, оның орнына таңбалар жиыны қолданылады. String.h C бағдарламалау тілінде, ал String C++ тілінде жолдарды басқарады. Жолдармен жұмысты ұйымдастыру үшін string жалғыз “string”нысаныy пайдаланады. C ++ стандартты кітапханасының бөлігі ретінде бұл нысандар std стандартты аттар кеңістігінің бөлігі болып табылады.
== Мысал ==
 «Сәлем, әлем!» қарапайым бағдарламасы. (iostream кітапханасын қолдана отырып) келесідей жазуға болады:
#include <iostream>
#include <string>
using namespace std;                  // Си тілінде #include <string.h>
int main()
{
    string str = "Hello, world!";
    cout << str << endl;
    // Си тілінде puts(str)
    return 0;
}
== Әдістер ==
== Конструктор ==
== Деструктор ==

Тағайындау операторы

өңдеу
== Итераторлар ==
== Әдістер ==

Қол жеткізу элементтері

өңдеу
== Модификаторлар ==
== Операциялар ==
== Сілетемелер ==


Пайдаланылған типтер:

өңдеу

=== {| class="wikitable" ! Тип !! Сипаттамасы |- | style="background:#eaecf0;" | value_type || char |- | style="background:#eaecf0;" | traits_type || char_traits<char> |- | style="background:#eaecf0;" | allocator_type || allocator<char> |- | style="background:#eaecf0;" | reference || char& |- | style="background:#eaecf0;" | const_reference || const char& |- | style="background:#eaecf0;" | pointer || char* |- | style="background:#eaecf0;" | const_pointer || const char* |- | style="background:#eaecf0;" | iterator || a random access iterator to char (convertible to const_iterator) |- | style="background:#eaecf0;" | const_iterator || a random access iterator to const char |- | style="background:#eaecf0;" | reverse_iterator || reverse_iterator<iterator> |- | style="background:#eaecf0;" | const_reverse_iterator || reverse_iterator<const_iterator> |- | style="background:#eaecf0;" | difference_type || ptrdiff_t |- | style="background:#eaecf0;" | size_type || size_t |} ===

Әдістер:

өңдеу

Конструктор:

өңдеу

Жариялы функция Бос жол жасайды:

 string() ;  

Көшіру конструкторы:

 string(const string& str) ;

Белгілі бір оқылған жолдың ұзындығын және орын ауыстыруын қамтамасыз ететін көшіруше конструктор: string(const string& str, size_t pos, size_t len = npos) ; Таңбалар жолына сілтеме қабылдайтын конструктор: string(const char* s) ; Оқылған жолдың ұзындығымен шектелген таңбалар жолына сілтеме қабылдайтын конструктор: string(const char* s, size_t n); N ұяшықты бір таңбамен толтырушы конструктор: string(size_t n, char c) ; Ауқымдағы таңбалар тізбегін көшіруші конструктор: template <class InputIterator> string(InputIterator first, InputIterator last) ; Инициализация тізімін көшіруші конструктор: string(initializer_list<char> il ; Жол тізімін шығарушы конструктор: string(string&& str) noexcept ;

Деструктор:

 String destructor (public member function) ;
Тағайындау операторы:

String типтік тапсырманы орындайтын оператор: string& operator= (const string& str) ; Жолға сілтегіш тағайындауды іске асыратын оператор: string& operator= (const char* s) ; Char типтік тапсырманы орындайтын оператор: string& operator= (char c) ; Char типінен бастап инициализация тізіміне тағайындалуды жүзеге асыратын оператор: string& operator= (initializer_list<char> il) ; Айнымалының мазмұнын сол шаманың ішінде жылжытуды жүзеге асыратын оператор: string& operator= (string&& str) noexcept ;


Итераторлар: Бірінші элементпен итераторды қайтарады: begin() ; Соңғы элементпен итераторды қайтарады: end() ; Итераторды соңғы элементпен қайтарады, бірақ кері тәртіпте(басынан аяғына): rbegin() ; Итераторды бірінші элементпен қайтарады, бірақ кері тәртіпте(басынан аяғына): rend() ; Бірінші элементі бар тұрақты итераторды қайтарады: cbegin() ; Соңғы элементі бар тұрақты итераторды қайтарады: cend() ; Тұрақты итераторды соңғы элементімен қайтарады, бірақ кері тәртіпте басынан аяғына): crbegin() ; Тұрақты итераторды бірінші элементімен қайтарады, бірақ кері тәртіпте басынан аяғына): crend() ;


Әдістер: Жолдың ағымындағы таңбалардың санын қайтарады: size_t size() const noexcept ; size_t length() const noexcept ; Жолдың максималды ұзындығын қайтарады: size_t max_size() const noexcept ; Жолдың ұзындығын өзгертеді:

 void resize(size_t n) ;

Жолдың ұзындығын өзгертеді және жолды көрсетілген таңбамен толтырады: void resize(size_t n, char c) ; Бөлінген жадының(память) жол ұзындығын қайтарады: size_t capacity() const noexcept ; N таңбалары үшін жадты сақтайды: void reserve(size_t n = 0) ; Жолды тазалайды: void clear() noexcept ; Жолдың бос екендігін көрсететін логикалық жалаушаны қайтарады: bool empty() const noexcept ;


Қол жеткізу элементтері (Элементы доступа): 

0-ден size() – 1 дейінгі жолдағы индекстегі таңбаны қайтарады: char& operator[] (size_t pos) ; 0-ден size() – 1 дейінгі жолдағы тұрақты таңбаны қайтарады: const char& operator[] (size_t pos) const ; Көрсетілген pos-қа таңбаға сілтемені қайтарады: char& at (size_t pos) ; Көрсетілген pos-қа таңбаға тұрақты сілтемені қайтарады: const char& at (size_t pos) const ; Жолдың соңғы таңбасына сілтемені қайтарады: char& back() ; Жолдың соңғы таңбасына тұрақты сілтемені қайтарады: const char& back() const ; Жолдың бірінші таңбасына сілтемені қайтарады: char& front()  ; Жолдың бірінші таңбасына тұрақты сілтемені қайтарады: const char& front() const ;


Модификаторлар: 

Жолмен байланыстыру: string& operator+= (const string& str) ; string& operator+= (const char* s) ; string& operator+= (char c) ; string& operator+= (initializer_list<char> il) ; string& append (const string& str) ; string& append (const string& str, size_t subpos, size_t sublen) ; string& append (const char* s) ; string& append (const char* s, size_t n) ; string& append (size_t n, char c) ; template <class InputIterator> string& append (InputIterator first, InputIterator last) ; string& append (initializer_list<char> il) ;

Жолдың соңына таңба қосу: void push_back (char c) ;

Жол үшін жаңа мән орнату:

 string& assign (const string& str)  ;

string& assign (const string& str, size_t subpos, size_t sublen) ; string& assign (const char* s) ; string& assign (const char* s, size_t n) ; string& assign (size_t n, char c) ; template <class InputIterator> string& assign (InputIterator first, InputIterator last) ; string& assign (initializer_list<char> il) ; string& assign (string&& str) noexcept ;

Белгіленген pos позициясына таңба салу: string& insert (size_t pos, const string& str) ; string& insert (size_t pos, const string& str, size_t subpos, size_t sublen) ; string& insert (size_t pos, const char* s) ; string& insert (size_t pos, const char* s, size_t n) ; string& insert (size_t pos, size_t n, char c) ; void insert (iterator p, size_t n, char c) ; iterator insert (iterator p, char c) ; template <class InputIterator> void insert (iterator p, InputIterator first, InputIterator last) ;

Жолдан таңбаларды өшіреді: string& erase (size_t pos = 0, size_t len = npos) ; iterator erase (const_iterator p) ; iterator erase (const_iterator first, const_iterator last) ;

Жолдың мазмұнын ауыстырады: string& replace (size_t pos, size_t len, const string& str) ; string& replace (const_iterator i1, const_iterator i2, const string& str) ; string& replace (size_t pos, size_t len, const string& str, size_t subpos, size_t sublen) ; string& replace (size_t pos, size_t len, const char* s) ; string& replace (const_iterator i1, const_iterator i2, const char* s) ; string& replace (size_t pos, size_t len, const char* s, size_t n) ; string& replace (const_iterator i1, const_iterator i2, const char* s, size_t n) ; string& replace (size_t pos, size_t len, size_t n, char c) ; string& replace (const_iterator i1, const_iterator i2, size_t n, char c) ; template <class InputIterator> string& replace (const_iterator i1, const_iterator i2, InputIterator first, InputIterator last) ; string& replace (const_iterator i1, const_iterator i2, initializer_list<char> il) ;

Ағымдағы жолдың мазмұнын str деп өзгертеді: void swap (string& str) ; Жолдағы соңғы таңбаны жояды: void pop_back() ;


Операциялар: 

Char түріндегі жолдың мазмұнын қайтарады: c_str ;

Pos позициясынан басталатын n таңбаларын қайтарады: Data ; get_allocator  ; copy ; find ; rfind ; find_first_of ; find_last_of ; find_first_not_of ; find_last_not_of ; substr(pos, n) ;


Сілтемелер:

өңдеу
  1. https://ru.wikipedia.org/wiki/String_(C%2B%2B).
  2. Класс string (недоступная ссылка). Дата обращения 27 марта 2014. Архивировано 9 февраля 2014 года.
  3. std::string. Дата обращения 27 марта 2014.