Verschil tussen klasse en structuur in C ++

Belangrijkste verschil: C ++ is een objectgeoriënteerde taal die zich voornamelijk richt op objecten. Een klasse in C ++ kan worden gedefinieerd als een verzameling gerelateerde variabelen en functies ingekapseld in een enkele structuur. Instanties van de klasse worden objecten genoemd. Een structuur in C ++ kan worden aangeduid als een door de gebruiker gedefinieerd gegevenstype dat zijn eigen bewerkingen bezit. Anders dan in de C-taal, zijn ze allebei vrij gelijkaardig in C ++. Het belangrijkste verschil dat er tussen bestaat, betreft de toegangsmodificator; de leden van een klasse zijn standaard privé, terwijl leden van een struct standaard openbaar zijn.

Een klasse in C ++ is slechts een uitbreiding van een structuur die wordt gebruikt in de C-taal. Het is een door de gebruiker gedefinieerd gegevenstype. Het bindt de gegevens en de bijbehorende functies in feite in één eenheid. Een structuur en een klasse in C-taal verschillen veel, omdat een structuur beperkte functionaliteit en functies heeft in vergelijking met een klasse. Aan de andere kant lijken structuur en klasse in C ++ behoorlijk op elkaar. Het belangrijkste verschil ontstaat doordat standaard alle leden van een klasse privé zijn, terwijl standaard alle leden van een structuur openbaar zijn.

Structuur is ook een door de gebruiker gedefinieerd gegevenstype met een bepaalde sjabloon. Het wordt over het algemeen gebruikt voor het groeperen van logisch gerelateerde gegevensitems. Na het maken van een structuur kunnen de variabelen die betrekking hebben op het type structuur worden gedefinieerd en gebruikt. Een structuur wordt gebruikt om een ​​record weer te geven. In C ++ kan een structuur zowel gegevensleden als functies als klassen hebben. Veel mensen vinden het moeilijk om te differentiëren tussen een klasse en een structuur. Technisch gezien worden ze allebei in C ++ als hetzelfde beschouwd.

Vergelijking tussen klasse en structuur in C ++:

Klasse

Structuur

Definitie

Een klasse in C ++ kan worden gedefinieerd als een verzameling gerelateerde variabelen en functies ingekapseld in een enkele structuur.

Een structuur kan worden aangeduid als een door de gebruiker gedefinieerd gegevenstype dat zijn eigen bewerkingen bezit.

Sleutelwoord voor de aangifte

Klasse

struct

Standaard toegangsspecificatie

Privaat

Openbaar

Voorbeeld

klasse myclass

{

privaat:

int data;

openbaar:

myclass (int data_):

data (data_)

{}

virtuele void foo () = 0;

virtuele ~ klasse ()

{}

};

struct myclass

{

privaat:

int data;

openbaar:

myclass (int data_):

data (data_)

{}

virtuele void foo () = 0;

virtuele ~ klasse ()

{}

};

Doel

Gegevens abstractie en verdere overerving

Over het algemeen, groeperen van gegevens

Type

Referentie

Waarde

Gebruik

Over het algemeen gebruikt voor grote hoeveelheden gegevens.

Over het algemeen gebruikt voor kleinere hoeveelheden gegevens.

Aanbevolen

Gerelateerde Artikelen

  • verschil tussen: Verschil tussen burgerlijk recht en strafrecht

    Verschil tussen burgerlijk recht en strafrecht

    Belangrijkste verschil: het burgerlijk recht is het rechtsbestel dat handelt over geschillen tussen twee burgerpartijen. Het zorgt voor het behoud van vrede en rust tussen de leden van zijn samenleving. Het burgerlijk recht behandelt in geen geval eventuele criminele activiteiten, alleen normale geschillen tussen de verdachte en de officier van justitie
  • verschil tussen: Verschil tussen Sony Xperia E en Samsung Galaxy S Duos

    Verschil tussen Sony Xperia E en Samsung Galaxy S Duos

    Belangrijk verschil: de Sony Xperia E en E-Dual zijn twee instaptelefoons van Sony Mobile. De telefoon wordt geleverd met een 3, 5 TFT-capacitief met een pixeldichtheid van ~ 165 ppi. Het wordt geleverd met een 1 GHz Cortex-A5 Qualcomm Snapdragon-processor, een Adreno 200 GPU en 512 MB RAM. Samsung Galaxy S Duos is een dual-sim telefoon die werd uitgebracht in september 2012
  • verschil tussen: Het verschil tussen de looptijd en de gehele levensverzekering

    Het verschil tussen de looptijd en de gehele levensverzekering

    Belangrijkste verschil: een overlijdensrisicoverzekering beschermt de emittent tegen onvoorziene gebeurtenissen gedurende een beperkte periode. Gehele levensverzekeringen zijn polissen die de duur van het leven van de emittent duren en uitkeren wanneer ze sterven. Verzekering wordt voor sommigen als een belangrijke investering beschouwd, terwijl anderen het als een nutteloze verspilling van geld beschouwen
  • verschil tussen: Verschil tussen Mm en Cm

    Verschil tussen Mm en Cm

    Belangrijkste verschil: Mm is gelijk aan een duizendste van een meter, terwijl cm gelijk is aan een honderdste van een meter. Dit zijn beide meeteenheden. Millimeters en centimeters zijn veelvoorkomende woorden die worden gehoord bij het meten van iets. Ze zijn een maateenheid in het internationale metrische systeem
  • verschil tussen: Verschil tussen wandelen en bergbeklimmen

    Verschil tussen wandelen en bergbeklimmen

    Belangrijkste verschil: wandelen is eigenlijk wandelen in de natuur op elk pad of op een specifiek pad. Wandelen vereist alleen dat de persoon in een normaal tot een stevig tempo loopt om het gewicht te verminderen en de frisse lucht uit de natuur te halen. Bergbeklimmen is een sport of hobby waarin een persoon wandelt of een berg beklimt
  • verschil tussen: Verschil tussen piramides en prisma's

    Verschil tussen piramides en prisma's

    Belangrijk verschil: in de geometrie zijn piramides en prisma's twee verschillende vormen. Het belangrijkste verschil tussen een piramide en een prisma is het feit dat een prisma twee basen heeft, terwijl de piramide er slechts één heeft. In de geometrie zijn piramides en prisma's twee verschillende vormen.
  • verschil tussen: Verschil tussen voedselallergie en voedselintolerantie

    Verschil tussen voedselallergie en voedselintolerantie

    Belangrijkste verschil: voedselallergie is een immuunreactie als gevolg van een verkeerde inschatting van onschadelijk voedsel. Aan de andere kant is voedselintolerantie een chemische reactie waarbij een lichaam bepaalde soorten voedsel niet kan verteren. Voedselallergie en voedselintolerantie zijn twee verschillende dingen, en mogen daarom niet verward worden door soortgelijke tekenen en symptomen
  • verschil tussen: Het verschil tussen Virus en Trojan

    Het verschil tussen Virus en Trojan

    Belangrijkste verschil: Virussen zijn programma's of codes die zich hechten aan bestanden en programma's en binnen de computer worden uitgevoerd zonder medeweten van de gebruiker. Trojan horse is een niet-replicerende malware die zichzelf verbergt als geautoriseerde en nuttige software. Virus en Trojaans paard zijn twee van de vele verschillende malware die op internet beschikbaar zijn
  • verschil tussen: Verschil tussen HTC Windows 8X en Sony Xperia SP

    Verschil tussen HTC Windows 8X en Sony Xperia SP

    Belangrijkste verschil: de HTC Windows 8X heeft een 4, 3-inch S-LCD2 capacitief touchscreen dat een pixeldichtheid van 342ppi biedt. Het scherm is beschermd met gorilla-glas 2, waardoor het vrij duurzaam is en minder gevoelig voor krassen. De telefoon is mooi glad en slank en weegt slechts 130 gram met de batterij

Editor'S Choice

Verschil tussen Velocity en Angular Velocity

Belangrijkste verschil: Velocity verwijst naar de mate van verandering van afstand ten opzichte van de tijd. Het is een vectorhoeveelheid, wat betekent dat het zowel een richting als een grootte heeft. De hoeksnelheid evalueert de veranderingssnelheid van de hoekpositie voor een draaiend object ten opzichte van de tijd