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!
