V C++ si môžte vyrábať vlastné typy premenných. Napríklad, ak vás nebaví písať
veľakrát long long, ale radšej by ste písali ll:
typedef long long ll;
int main(){
ll a;
}
Alebo ste zistili, že existujú dvojice — tie nájdete v knižnici algorihtm a volajú sa pair.
Dvojica intov je pair<int, int>, trojica charu intu a charu je napríklad
pair<char, pair<int, char>>. A to už je celkom dlhý výraz na písanie, takže je fajn použiť:
typedef pair<int, int> pii;
typedef pair<int, char> pic;
typedef pair<char, pic> pcic;
int main() {
// takto sa dvojice vyrabaju
pii dvainty = pii(7, 8);
// alebo takto
pic intaznak = make_pair(10, 'a');
// da sa aj kombinovat
pcic troica = make_pair('b', pic(11, 'c'));
// takto sa pristupuje ku prvkom
dvainty.second = intaznak.first;
troica.second.first = dvainty.second;
intaznak = troica.second;
//teraz si predstavte, ake by to bolo neprehladne bez typedefu
}
Dajú sa vyrábať aj zložitejšie štruktúry pomocou struct. Tu je jednoduchý príklad,
keď chcete vedieť viac, trocha pogooglite. Všimnite si, že za definíciu struct sa píše
bodkočiarka.
struct Stvorica {
int a, b, c, d;
char e, f;
};
int main() {
Stvorica s;
s.a = 7;
s.b = s.a + 8;
s.e = s.f = '.';
}