Funkcia back
Funkcia back vráti referenciu resp. odkaz na znak, ktorý je posledný v reťazci. Samozrejme, posledným znakom sa nemyslí ukončovací znak \0. Funkcia back nepodporuje žiadne argumenty.
1. príklad: Testujeme funkciu back
#include #include using namespace std; int main() { string retazec1 = "Neviete o nejakej rastline, ktora ma liecive ucinky?"; cout << retazec1.back() << "\n"; string retazec2 = "Viva la France, good land"; cout << retazec2.back() << "\n"; string retazec3 = "Bez ropy dnesny svet neprezije!"; cout << retazec3.back() << "\n"; return 0; }
Výsledok programu:
? d !
Predstavme si, že chceme rýchlo zmeniť posledný znak za iný znak. Ukážeme si to v druhom príklade.
2. príklad: Meníme posledný znak za iný znak
#include <iostream> #include <string> using namespace std; int main() { string retazec1 = "Neviete o nejakej rastline, ktora ma liecive ucinky."; if(retazec1.back() != '?') retazec1.back() = '?'; cout << retazec1 << "\n"; if(retazec1.back() == '?') retazec1.back() = '.'; cout << retazec1 << "\n"; if(retazec1.back()) //ak je posledným znakom hocičo retazec1.back() = '!'; cout << retazec1 << "\n"; return 0; }
Výsledok programu:
Neviete o nejakej rastline, ktora ma liecive ucinky? Neviete o nejakej rastline, ktora ma liecive ucinky. Neviete o nejakej rastline, ktora ma liecive ucinky!
Funkcia front
Funkcia front vracia prvý znak v reťazci. Rovnako ako funkcia back nepodporuje argumenty.
3. príklad: Testujeme funkciu front
#include <iostream> #include <string> using namespace std; int main() { string retazec1 = "Povedz mi, co ty vies o svete?"; cout << retazec1.front() << "\n"; string retazec2 = "Och lasko, este ze ta mam!"; cout << retazec2.front() << "\n"; string retazec3 = "Kocko, pod sa hrat!"; cout << retazec3.front() << "\n"; return 0; }
Výsledok programu:
P O K
4. príklad: Meníme prvý znak za iný znak
#include <iostream> #include <string> using namespace std; int main() { string retazec1 = "Rozum? Co to je?"; if(retazec1.front() != 'V') retazec1.front() = 'X'; cout << retazec1 << "\n"; if(retazec1.front() == 'X') retazec1.front() = 'K'; cout << retazec1 << "\n"; if(retazec1.front()) retazec1.front() = 'O'; cout << retazec1 << "\n"; return 0; }
Výsledok programu:
Xozum? Co to je? Kozum? Co to je? Oozum? Co to je?
Funkcia push_back
Funkcia push_back pripojí znak definovaný ako argument do posledného miesta v reťazci. Stane sa tak znak posledným v reťazci. Samozrejme, zvýši sa size o +1.
5. príklad: Testujeme funkciu push_back
#include <iostream> #include <string> using namespace std; int main() { string retazec1 = "Vytvoril som program simulujuci kolonizaciu Marsu"; cout << retazec1 << "\n"; cout << "Ejj vidim chybicku! Kedze je to oznamovacia veta, tak na konci vety davame bodku!\n"; retazec1.push_back('.'); cout << retazec1; return 0; }
Výsledok programu:
Vytvoril som program simulujuci kolonizaciu Marsu Ejj vidim chybicku! Kedze je to oznamovacia veta, tak na konci vety davame bodku! Vytvoril som program simulujuci kolonizaciu Marsu.
6. príklad: Zopakovanie si funkcie push_back
#include <iostream> #include <string> using namespace std; int main() { string retazec1 = "Treba sa snazit v zivote, ak chcete nieco dosiahnut"; if(retazec1.back() != '!') retazec1.push_back('!'); cout << retazec1 << "\n"; string retazec2 = "Najlepsia hra je Euro Truck Simulator 1"; if(retazec2.back() != '2') { retazec2.erase(retazec2.size()-1); retazec2.push_back('2'); retazec2.push_back('!'); } cout << retazec2 << "\n"; return 0; }
Výsledok programu:
Treba sa snazit v zivote, ak chcete nieco dosiahnut! Najlepsia hra je Euro Truck Simulator 2!