Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
prog_exz_dayin.docx
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
237.64 Кб
Скачать

19.Конструкторлар.Қатарларды түрлендіру, қатардың құрамын іздеу

Конструкторлар объектіні инициализа-циялау үшін арналған және автоматты түрде шақырылады.

Бір қатардың бөлігін екіншісіне қою (вставка) үшін insert функциясы қолданылады:

insert (size_type pos1, const string&str);

insert (size_type pos1, const string&str, size_type pos2, size_type n);

insert (size_type pos, const char*s, size_type n);

Қатардың бөлігін жою үш.erase функ. Қолд:erase (size_type pos=0, size_type n=npos);

Ол pos позициясынан бастап шақырылған қатардың n элементін жояды. Егер позиция көрсетілмесе, онда қатардың басынан бастап жояды.

Бүкіл қатарды тазалау қызметін clear функциясы атқарады: void clear();

Қатардың бөлігін ауыстыру (замена) үшін replace функциясы қолданылады:

replace (size_type pos1, size_type n1, const string&str);

replace (size_type pos1, size_type n1, const string&str, size_type pos2, size_type n2);

replace (size_type pos1, size_type n1, const char*s, size_type n2);

2қатарды бір-бірімен алмастыру үшін swap функциясы қолданылады:swap (string&s);

Қатардың бөлігін бөліп алу үшін substr функциясы қолданылады:

string substr (size_type pos=0, size_type n=npos) const;

string типті объектілерді ескі стильдегі қатарға түрлендіру үшін c_str функциясы қолданылады: const char*c_str() const;

Қатардың құрамын іздеу

Қатардың құрамын (подстрока) іздеу үшін бірнеше функциялар қарастырылған. Төменде негізгілері келтірілген:

size_type find(const string&str, size_type pos=0) const;

Шақырылған қатардан pos позициясынан бастап str қатарының сол жақтан енуін іздейді және егер қатар табылмаса, онда қатардың позициясын немесе npos-ны қайтарады. size_type find(char c, size_type pos=0) const;

Шақырылған қатардан pos позициясынан бастап с символының сол жақтан енуін іздейді және егер қатар табылмаса, онда қатардың позициясын немесе npos-ны қайтарады. size_type rfind(const string&str, size_type pos=npos) const;

Шақырылған қатардан pos позициясына дейін str қатарының оң жақтан енуін іздейді және егер қатар табылмаса, онда қатардың позициясын немесе npos-ны қайтарады. size_type rfind(char c, size_type pos=npos) const;

pos позициясынан бастап шақырылған қатардың символымен c символының сәйкес келмейтін сол жақ позициясын іздейді

size_type find_last_of(const string&str, size_type pos=npos) const;

pos позициясынан дейін шақырылған қатардың символымен str қатарының бірде-бір символы сәйкес келмейтін оң жақ позициясын іздейді.

size_type find_last_of(char c, size_type pos=npos) const;

20.Деструкторлар және оның қасиеттері

Деструктор – бұл берілген класстың нақты объектілерімен байланысқан ресурстарды босату үшін қолданылатын арнайы функция-мүшелер. Дестукторлар класс объектілерін автоматты түрде бұзады (разрушение). Форматы:

class className

{ public:

className(); // үнсіздік бойынша конструктор

// басқа конструкторлар

~className(); // деструкторды хабарлау

// басқа функция-мүшелер };

Деструкторлар қасиеттері

  • Деструктор – объектіні жою кезінде шақырылатын әдіс

  • Аты класс атымен сәйкес келеді, ~ белгісінен басталады

  • Параметрлері жоқ

class Complex

{ …

public:

~Complex()

{

}}

  • Деструкторда файлдарды жабуға және жадыны босатуға болады.

Қосымша

  • new операторы конструкторды, ал delete – деструкторды шақырады

  • Динамикалық жадыны қолдану, яғни жады компиляция кезінде емес, программаны қосу кезінде анықталады.

  • new опрератоы барлық мәліметтер типтері үшін жұмыс істейді

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]