C ++ verwijzingen naar structuur

In dit artikel vindt u relevante voorbeelden die u zullen helpen bij het werken met aanwijzingen om toegang te krijgen tot gegevens binnen een structuur.

Een pointer variabele kan worden gemaakt niet alleen natieve types zoals ( int, float, doubleenz.), Maar ze kunnen ook worden gemaakt voor de gebruiker gedefinieerde types structuur.

Als u niet weet wat pointers zijn, bezoek dan C ++ pointers.

Hier is hoe u een aanwijzer voor structuren kunt maken:

 #include using namespace std; struct temp ( int i; float f; ); int main() ( temp *ptr; return 0; )

Dit programma maakt een pointer ptr van het type structuurtemp.

Voorbeeld: verwijzingen naar structuur

 #include using namespace std; struct Distance ( int feet; float inch; ); int main() ( Distance *ptr, d; ptr = &d; cout <> (*ptr).feet; cout <> (*ptr).inch; cout << "Displaying information." << endl; cout << "Distance = " << (*ptr).feet << " feet " << (*ptr).inch << " inches"; return 0; )

Uitvoer

Voeten invoeren: 4 Inch invoeren: 3.5 Informatie weergeven. Afstand = 4 voet 3,5 inch

In dit programma wordt een pointervariabele ptr en een normale variabele d van de typestructuur Distance gedefinieerd.

Het adres van variabele d wordt opgeslagen in pointervariabele, dat wil zeggen, ptr wijst naar variabele d. Vervolgens wordt de lidfunctie van variabele d benaderd met pointer.

Opmerking: aangezien pointer ptr in dit programma naar variabele d verwijst, (*ptr).inchen d.inchexact dezelfde cel is. Evenzo, (*ptr).feeten d.feetis exact dezelfde cel.

De syntaxis om toegang te krijgen tot de lidfunctie met de pointer is lelijk en er is een alternatieve notatie -> die vaker voorkomt.

 ptr-> feet is hetzelfde als (* ptr) .feet ptr-> inch is hetzelfde als (* ptr) .inch

Interessante artikelen...