strings pair tuples stl
Брзо научите основне концепте гудача, парова и туплеа у СТЛ-у.
У овом упутству стећи ћемо основно знање о жицама, паровима и туплевима у СТЛ-у, пре него што заправо пређемо на детаљне и веће концепте као што су итератори, алгоритми и контејнери.
Иако се стрингови користе на исти начин као и у општем језику Ц ++, вреди разговарати са СТЛ тачке гледишта. Струне можемо сматрати секвенцијалним контејнером знакова. Такође, како се бавимо предлошцима у СТЛ-у, неопходно је да знамо концепт ПАИР и ТУПЛЕ у односу на СТЛ.
=> Проверите овде детаљне туторијале за обуку за Ц ++.
Шта ћете научити:
Жице у СТЛ
Жице у СТЛ-у подржавају и АСЦИИ и Уницоде (широко-карактерски) формат.
СТЛ подржава две врсте жица:
# 1) низ: Ово је низ АСЦИИ формата и да бисмо укључили ову врсту објеката низа у програм, морамо у свој програм укључити датотеку стринг.х.
#include
# 2) встринг: Ово је низ са широким знаковима. У МФЦ програмирању називамо га ЦСтринг. Да бисмо укључили встринг објекте у наш програм, укључујемо датотеку кстринг.
#include
Било да су АСЦИИ или Уницоде, низови у СТЛ-у подржавају различите методе баш на начин на који то раде други СТЛ контејнери.
Неке од метода које стринг објекат подржава:
- започети() : Врати итератор на почетку.
- крај() : Врати итератор на крају.
- инсерт () : Уметни у низ.
- обриши () : Избришите знакове из низа.
- величина () : Враћа дужину низа.
- празно () : Испразните садржај низа.
Осим ових горе наведених метода, већ смо обрађивали методе класе низова у нашим ранијим низовима у водичима за Ц ++.
Напишимо једноставан програм за демонстрацију СТЛ низова.
како изгледа мрежни безбедносни кључ
#include #include using namespace std; int main() { string str1; str1.insert(str1.end(),'W'); str1.insert(str1.end(),'O'); str1.insert(str1.end(),'R'); str1.insert(str1.end(),'L'); str1.insert(str1.end(),'D'); for (string::const_iterator it = str1.begin(); it != str1.end(); ++it) { cout << *it; } int len = str1.size(); cout<<'
Length of string:'< Излаз:
СВЕТ
Дужина жице: 5
У горе наведеном коду, као што смо видели, декларишемо објект низа стр1, а затим методом уметања додајемо знакове један по један на крај низа. Затим помоћу објекта итератора приказујемо низ.
Даље, излажемо дужину низа методом величине. Ово је једноставан програм који демонстрира само жице.
ПАР У СТЛ
Класа ПАИР у СТЛ-у је корисна током програмирања асоцијативних контејнера. ПАИР је класа шаблона која групише две вредности истог или различитих типова података.
Општа синтакса је:
pair pair1, pair2;
Горња линија кода ствара два пара, тј. Паир1 и паир2. Оба ова пара имају први објекат типа Т1 и други објекат типа Т2.
Т1 је први члан, а Т2 је други члан пара1 и пара2.
Следе методе које подржава класа ПАИР:
- Оператор (=): Доделите вредности пару.
- свап: Замењује садржај пара.
- маке_паир (): Направите и вратите пар који има објекте дефинисане листом параметара.
- Оператори (==,! =,>,<, = ) : Лексикографски упоређује два пара.
Напишимо основни програм који приказује употребу ових функција у коду.
врхунски ворлд оф варцрафт приватни сервер
#include using namespace std; int main () { pair pair1, pair3; pair pair2; pair1 = make_pair(1, 2); pair2 = make_pair(1, 'SoftwareTestingHelp'); pair3 = make_pair(2, 4); cout<< '
Pair1 First member: '< Излаз:
Пар1 Први члан: 1
Паир2 Други члан: СофтвареТестингХелп
Парови нису једнаки
У горе наведеном програму креирамо по два пара целобројних типова и још један пар целобројних и низних типова. Следеће помоћу функције „маке_паир“ додељујемо вредности сваком пару.
Даље, упоређујемо паир1 и паир2 помоћу оператора „==“ да бисмо проверили да ли су једнаки или не. Овај програм демонстрира основни рад класе ПАИР.
Корпа у СТЛ
Концепт Тупле је продужење Паир-а. У пару можемо комбиновати два хетерогена објекта, док у скупкама можемо комбинирати три хетерогена објекта.
Општа синтакса корпице је:
tupletuple1;
Баш као и пар, и тупле подржава сличне функције и још неке додатне функције.
Они су наведени у наставку:
- Градитељ: Да би се конструисао нови коријен.
- Тупле_елемент: Враћа тип елемента тупле.
- маке_тупле (): Ствара и враћа сет који садржи елементе описане листом параметара.
- Оператори (==,! =,>,<, = ): Лексикографски упоређују два пара.
- Оператор (=): За додељивање вредности корпици.
- свап: Да замените вредност две корице.
- Кравата: Везати вредности корпице са њеним референцама.
Користимо неке од ових функција у програму да бисмо видели како функционишу.
#include #include using namespace std; int main () { tuple tuple1; tuple tuple2; tuple1 = make_tuple(1, 2,3); tuple2 = make_tuple(1,'Hello', 'C++ Tuples'); int id; string str1, str2; tie(id, str1, str2) = tuple2; cout << id <<' '<< str1 <<' '<< str2; return 0; }
Излаз:
1 Здраво Ц ++ корпице
У горњем коду за демонстрацију корпица креирамо две корпе. Прва корпица корпица1 састоји се од три целобројне вредности. Други тупле тј. Тупле2 састоји се од једне целобројне вредности и две стринг вредности.
Даље, додељујемо вредности обема коритама помоћу функције „маке_тупле“. Затим помоћу позива функције „тие“ везујемо или додељујемо вредности из тупле2 у ид и два низа.
На крају, избацујемо ове вредности. Излаз приказује вредности из тупле2 које смо доделили ид и два низа.
Закључак
Тако смо у овом упутству укратко размотрили жице, пар и сет који се користе у СТЛ-у. Иако су операције са стринговима сличне општем Ц ++, поред тога, на тим стринговима можемо радити и итераторе.
Конструкције парова и корпица су корисне током програмирања СТЛ контејнера, посебно асоцијативних контејнера.
У нашем предстојећем упутству детаљно ћемо научити о алгоритмима и итераторима пре него што пређемо на стварно програмирање СТЛ-а помоћу СТЛ-а.
=> Посетите овде да бисте видели Ц ++ серију обуке за све.
Препоручено читање