Kľúčový rozdiel: C ++ je objektovo orientovaný jazyk, ktorý sa zameriava hlavne na objekty. Trieda v C ++ môže byť definovaná ako súbor súvisiacich premenných a funkcií zapuzdrených v jedinej štruktúre. Inštancie triedy sa označujú ako objekty. Štruktúra v jazyku C ++ môže byť označená ako dátový typ definovaný používateľom, ktorý má vlastné operácie. Na rozdiel od jazyka C sú obidva podobné v C ++. Hlavný rozdiel, ktorý medzi nimi existuje, súvisí s modifikátorom prístupu; členovia triedy sú štandardne súkromní, zatiaľ čo členovia štruktúry sú štandardne verejní.
Trieda v jazyku C je len rozšírením štruktúry používanej v jazyku C. Ide o dátový typ definovaný používateľom. V skutočnosti viaže údaje a súvisiace funkcie do jednej jednotky. Štruktúra a trieda v jazyku C sa značne líši, pretože štruktúra má v porovnaní s triedou obmedzené funkcie a funkcie. Na druhej strane štruktúra a trieda v C ++ sú dosť podobné. Hlavný rozdiel vzniká v dôsledku skutočnosti, že všetci členovia triedy sú štandardne súkromní, zatiaľ čo všetci členovia štruktúry sú štandardne verejní.
Porovnanie triedy a štruktúry v jazyku C ++:
Trieda | štruktúra | |
definícia | Trieda v C ++ môže byť definovaná ako súbor súvisiacich premenných a funkcií zapuzdrených v jedinej štruktúre. | Štruktúru možno označiť ako dátový typ definovaný používateľom, ktorý má vlastné operácie. |
Kľúčové slovo pre vyhlásenie | Trieda | struct |
Predvolený prístupový špecifikátor | Súkromné | verejnosť |
príklad | trieda myclass { súkromné: int dáta; public: myclass (int data_): Data (údaj_Y) {} virtuálna void foo () = 0; virtuálna ~ trieda () {} }; | structure myclass { súkromné: int dáta; public: myclass (int data_): Data (údaj_Y) {} virtuálna void foo () = 0; virtuálna ~ trieda () {} }; |
účel | Zber údajov a ďalšia dedičnosť | Zoskupovanie údajov vo všeobecnosti |
typ | referencie | hodnota |
používanie | Všeobecne sa používa pre veľké množstvo údajov. | Všeobecne sa používa pre menšie množstvo údajov. |