Kakšna je razlika med strukturo in razredom v C ++

Avtor: John Stephens
Datum Ustvarjanja: 26 Januar 2021
Datum Posodobitve: 18 Pohod 2024
Anonim
What Is The Difference Between struct And class In C++?
Video.: What Is The Difference Between struct And class In C++?

Vsebina

The glavna razlika med strukturo in razredom v C ++ je to Struktura je tip podatkov tipa podatkov, medtem ko je razred podatkovni tip referenčnega tipa.


Struktura in razred sta dva programska koncepta v C ++. C ++ je programski jezik na visoki ravni za splošni namen, ki je nadskup C jezika, saj vsebuje veliko naprednih funkcij. Obstajata predvsem dve vrsti podatkov; ti ti tipi vrednosti in referenčni tip. V tipu vrednosti je vrednost spremenljivki dodeljena neposredno. V podatkih tipa referenc spremenljivka ne shrani dejanskih podatkov. V njej so shranjene reference za te posebne podatke.

Pokrita ključna območja

1. Kaj je struktura v C +
- Opredelitev, funkcionalnost
2. Kaj je razred v C ++
- Opredelitev, funkcionalnost
3. Kakšna je razlika med strukturo in razredom v C ++
  - Primerjava ključnih razlik

Ključni pogoji

Struktura, razred, C ++



Kaj je struktura v C ++

Struktura je ena spremenljivka, ki lahko vsebuje več tipov podatkov. Z drugimi besedami, sestavljena je iz spremenljivk več tipov podatkov. Enotno ime se uporablja za sklicevanje na vse. Poleg tega mora obstajati deklaracija strukture, da jo lahko programer uporabi v glavni metodi. V glavni metodi lahko ustvari primerek strukture in ga uporabi za opravljanje zahtevane naloge. Primer programa s strukturo je naslednji.


Slika 1: C ++ program s strukturo

Kot je prikazano na zgornji sliki, obstaja struktura, imenovana Knjiga. Vsebuje tri lastnosti: naslov, avtor in strani. V glavni metodi obstaja spremenljivka tipa strukture kot b. Funkcija »strcpy« pomaga kopirati nize v lastnosti naslova in avtorja. Programer lahko dostopa do lastnosti strukture z operaterjem dostopa (.). Prav tako lahko dodeli vrednosti naslovu, avtorju in stranem. Končno jih izpisujejo izjave na konzoli.


Kaj je razred v C ++

Ena od glavnih prednosti C ++ je, da podpira OOP. V OOP-u je vse predmet. Programer mora ustvariti razred za ustvarjanje objektov. Razred je sestavljen iz atributov in metod. Atribut opisuje lastnosti, medtem ko metode opisujejo vedenje. Ti atributi in metode razreda se imenujejo člani tega razreda.

Člani razreda lahko imajo dostopne specifikatorje. Obstajajo predvsem trije izvajalci dostopa kot javni, zasebni in zaščiteni. Javni člani so vidni vsem drugim razredom. Zasebni člani so dostopni samo v razredu, medtem ko so zaščiteni člani dostopni znotraj paketa in njegovih podrazredov. Primer programa z razredom je naslednji.


Slika 2: C ++ program z razredom

Kot je prikazano na zgornji sliki, obstaja razred, imenovan Book. Ima tri javne nepremičnine; so naslov, avtor in strani. Pri glavni metodi knjiga b navaja, da je b tipa Book. Programer lahko dodeli vrednosti naslovu, avtorju in stranem z uporabo operaterja dostopa (.). Nazadnje, izjave cout natisnejo te vrednosti na konzoli.

Razlika med strukturo in razredom v jeziku C ++

Opredelitev

Struktura v C ++ je podatkovni tip vrednosti, ki lahko vsebuje povezane podatke, ki pripadajo različnim tipom podatkov, medtem ko je razred v C ++ načrt, ki definira podatke in metode za ustvarjanje objektov. To je torej temeljna razlika med strukturo in razredom v jeziku C ++.

Dedovanje

Poleg tega je dedovanje velika razlika med strukturo in razredom v jeziku C ++. Struktura v C ++ ne more podedovati drugih razredov ali struktur, medtem ko lahko razred v C ++ podeduje druge razrede ali strukture.

Primer

Primer strukture v C ++ je strukturna spremenljivka, medtem ko je primerek razreda v C ++ objekt. Zato je to še ena razlika med strukturo in razredom v jeziku C ++.

Ključna beseda

Poleg tega je ključna beseda, ki definira strukturo, "struct", medtem ko je ključna beseda za definiranje razreda "razred".

Specifikacija privzetega dostopa

Tudi privzeti specifikacijski dostop je še ena razlika med strukturo in razredom v jeziku C ++. V strukturi, če ni prijavljenih specifikacij dostopa, je član ali lastnosti javno. Če pa v razredu ni prijavljenih specifikacij dostopa, so člani zasebni.

Zaključek

Spremenljivka je pomnilniška lokacija, ki lahko vsebuje vrednost. Več podatkovnih tipov je treba shraniti kot eno samo enoto. Dve programski funkciji, ki omogočata shranjevanje več podatkovnih tipov kot eno samo enoto, sta strukturi in razredu. Glavna razlika med strukturo in razredom v C ++ je v tem, da je struktura podatkov tipa podatkovnega tipa, medtem ko je razred referenčni tip podatkovnega tipa.

Sklic:

1. Python Strings (s primeri),

Energija vezave in energija diociacije vezi ta izrazoma, ki e pogoto zdita zmedena, aj ta oba povezana z razpadom kemijke vezi med dvema atomoma. Koncepti energije vezave in energije diociacije vezi ...

Kotne ribe in hrutančnice o dve kupini rib, ki predtavljata dva razreda vodnih hrbtov.Kotne ribe padajo v razred Oteichthye, medtem ko hrutančnice odijo v razred Chondrichthye. V morki in ladki vodi ...

Zate