Se poate trece la capitolul următor cu tasta ► și se poate reveni la un capitol precedent cu tasta ◄

Cum putem defini structuri de date în C++


<

C
a
p
i
t
o
l
u
l

a
n
t
e
r
i
o
r

<

Declarare

Structuri de date

Folosim cuvântul rezervat struct după care numele structurii pe care vrem să o construim și apoi descriem membrii săi.

Pentru a declara o variabilă de tip structură, trebuie totuși să folosim cuvântul struct înainte de a defini variabila. Iar membrii săi sunt accesați folosind caracterul „.”.

Pe de altă parte, putem fi puțin mai șmecheri și să declarăm structura și să definim variabilele de acest tip, fără a face două declarații separate, în felul următor:

Altă modalitate de a defini variabile de tip structură

Ce se observă este că după definirea concretă a structurii, putem declara variabilele de acest tip. Dacă avem mai multe pur și simplu le despărțim prin virgulă.

Putem avea pointeri de structuri? Cu siguranță!

Pointeri de structuri

La declarație tot ce am făcut a fost să spunem că vrem un pointer punând semnul asterix înaintea numelui variabilei. Însă ce s-a întâmplat cu accesul la membrii? Să vedem.

În primul rând, variabila Gigel este acum pointer și de fiecare dată când vrem să schimbăm o valoare indicată de el trebuie să punem asterixul în față. Și punem parantezele ca să spunem cine e pointerul: variabila Gigel nu Gigel.nume. După aceea accesăm membrul care ne interesează după metoda pe care am prezentat-o mai sus.

Dar ce e cu celelalte linii? De ce apare „->”? Aici, limbajul C++ vine cu o simplificare. E destul de enervant, când lucrezi numai cu pointeri și structuri să tot pui paranteze și astericși. Așadar limbajul C++ ne oferă această facilitate: în loc de paranteze folosim semnul de indicare ->

Acesta, fără doar și poate, este simbolul care definește C++ul căci e folosit în 110% din programele scrise în C++. Da, 10% e folosit și când nu se programeaza în C++, așa, doar din inerție.


>

C
a
p
i
t
o
l
u
l

u
r
m
ă
t
o
r

>

Ți-a fost de ajutor ce am scris aici?
Hei, mersi de răspuns.