#include <iostream>
#include <vector>
using namespace std;
void vector_przyklad1()
{
vector<int> tab;
// podajesz z gory rozmiar elementow, mozesz podac zmienna oczywiscie
tab.resize(10);
// wypelniasz
for (int i = 0; i < 10 /* lub i < tab.size() */; i++)
{
tab[i] = i * 2;
}
// wypisujesz od tylu
for (int i = tab.size() - 1; i >= 0; i--)
{
cout << "tab[" << i << "] = " << tab[i] << endl;
}
}
void vector_przyklad2()
{
vector<int> tab;
// nie podajesz ilosci elementow
cout << "Podaj ilosc elementow:" << endl;
int n;
cin >> n;
// nie zmieniasz rozmiaru vector, opcjonalnie mozesz mu powiedziec ile
// elementow planujesz dodac
// odkomentuj ta linie zeby to zrobic:
// tab.reserve(n);
// nie zmienia ona rozmiaru tablicy, czysta optymalizacja
for (int i = 0; i < n; i++)
{
// dodajesz element na koncu tablicy (i zwiekszasz rozmiar)
tab.push_back(1000 - i);
// Wypiszmy element i rozmiar tablicy
// indeks tablicy to albo i
// albo tab.size() - 1
cout << "tab[" << tab.size() - 1 << "] = " << tab[i]
<< ", tab.size() = " << tab.size() << endl;
}
}
void string_przyklad()
{
string s1 = "asd";
string s2;
s2 = "123";
string s3 = s1 + s2;
s3 += "ggg";
string s4 = s1 + "ddd" + s3;
// takie cos nie zadziala
// string s5 = "asd" + "def";
// bo dodalbys wskazniki,
// ale juz takie cos zadziala:
string s5 = string("asd") + string("def");
cout << "s1 = " << s1 << endl;
cout << "s2 = " << s2 << endl;
cout << "s3 = " << s3 << endl;
cout << "s4 = " << s4 << endl;
cout << "s5 = " << s5 << endl;
}
int main()
{
vector_przyklad1();
vector_przyklad2();
string_przyklad();
return 0;
}