Strukture i klase

Strukture su složeni tip podataka.

Uporaba polja omogućavala nam je pohranu više podataka pod jednim imenom kako bismo smanjili broj varijabli u programu.  U polju su svi podaci  biti istog tipa.

Stukture nam omogućavaju grupiranje podataka različitih tipova.

Za deklaraciju strukture koristimo ključnu riječ struct. Unutar stukture može se nalaziti proizvoljan broj članova različitih tipova.



1. Strukture

Strukture su složeni tip podataka.

Uporaba polja omogućavala nam je grupiranje pohranu više podataka pod jednim imenom kako bismo smanjili broj varijabli u programu.  U polju su svi podaci bili istog tipa.

Strukture nam omogućavaju grupiranje podataka različitih tipova.

Za deklaraciju strukture koristimo ključnu riječ struct

Ime strukture uvijek započinje velikim slovom kako bismo ju razlikovali od varijable.  Unutar stukture može se nalaziti proizvoljan broj članskih varijabli različitih tipova. Vidljivost članskih varijabli defaultno je public,   mogu biti još i private i protected


Struktura može biti globalna ili lokalna ovisno gdje je deklarirana.

Prilikom deklaracije strukture, iako kompajleru govorimo da ona postoji ne dolazi do alokacije memorije, nego tek kada deklariramo varijablu iz strukture. 

Osnovna prednost uporabe struktura u odnosu na pojedinačne varijable je to što možemo proslijediti cijelu strukturu u funkciju

Ukoliko odlučimo dodati nove članske varijable u strukturu ne moramo mijenjati deklaraciju funkcije. Funkcija može vratiti strukturu što je jedan od načina vraćanja više varijabli.

Struktura može sadržavati druge strukture

Obično je veličina memorije koju zauzima struktura suma veličina koju u memoriji zauzimaju pojedine članske varijable sturkture, no može biti i veća! Uzrok tome je što kompajler ponekad umeće praznine u strukture (padding).

Strukture je moguće dijeliti u više datoteka, dodavanjem strukture u u zaglavlje.

Struktura ne može sadržavati funkcije (metode), funkcije možemo koristiti sa strukturama ali ne unutar njih.