C ++ geschiedenis, kenmerken, gegevenstypen, voorbeelden

3143
Basil Manning

C++ is een verbeterde en uitgebreide versie van de programmeertaal C, die in 1979 door Stroustrup werd ontwikkeld als onderdeel van hun Ph.D.-project. Stroustrup ontwierp wat hij "C met klassen" noemde, dat later C ++ werd genoemd, omdat hij van mening was dat bestaande programmeertalen beperkingen hadden en niet de beste waren voor grootschalige projecten..

Daarom gebruikte hij C om de programmeertaal te ontwikkelen waarnaar hij op zoek was, want C was een effectieve taal en werkte snel..

Bron: pixabay.com

C ++ is een programmeertaal voor algemene doeleinden die verfijnd en krachtig is. Deze gecompileerde, vrije taal is het meest geschikt voor programmeurs op gemiddeld niveau.

Degenen die echter willen beginnen met programmeren met C ++, zullen merken dat ze snel programmeerconcepten kunnen leren waarmee ze een heel eind in hun carrière kunnen komen..

Het is compatibel met objectgeoriënteerd programmeren en neemt al zijn kenmerken over. Deze concepten maken de C ++ -taal anders en wordt voornamelijk gebruikt om op een eenvoudige en geconceptualiseerde manier applicaties te ontwikkelen..

Artikel index

  • 1 Geschiedenis
    • 1.1 Ontwerp en uitvoering
    • 1.2 Eerste release
    • 1.3 C 2.0
    • 1.4 Gestandaardiseerde versie
    • 1.5 Recente updates
  • 2 Kenmerken van C++
    • 2.1 Populaire taal
    • 2.2 Object georiënteerd
    • 2.3 Procedureel
    • 2.4 Gestructureerd programmeren
    • 2.5 Geheugenbeheer
    • 2.6 Aanwijzingen
    • 2.7 Gecompileerde taal
  • 3 Gegevenstypen in C++
    • 3.1 - Primair
    • 3.2 - Secundair
    • 3.3 - Door gebruiker gedefinieerd
  • 4 Waar is C ++ voor? Toepassingen
    • 4.1 Toepassingen
    • 4.2 Besturingssystemen
    • 4.3 Samenstellers
    • 4.4 Spellen
    • 4.5 Webbrowsers
    • 4.6 Internet der dingen
    • 4.7 Cloud / gedistribueerde systemen
    • 4.8 Toegang tot databases
  • 5 voorbeelden
    • 5.1 Bibliotheken
  • 6 voordelen
    • 6.1 Snelheid
    • 6.2 Dicht bij hardware
    • 6.3 Efficiëntie
    • 6.4 Vrijheid om programmeerstijlen te kiezen
    • 6.5 Vermogen om complexe problemen op te lossen
    • 6.6 Mogelijkheid om fouten te detecteren voordat ze worden uitgevoerd
  • 7 nadelen
    • 7.1 Gebruik van aanwijzingen
    • 7.2 Beveiligingsproblemen
    • 7.3 Afwezigheid van vuilnisman
    • 7.4 Afwezigheid van een draad
    • 7.5 Gecompileerde programma's
    • 7.6 Kan complex zijn
  • 8 referenties

Verhaal

Ontwerp en implementatie

C ++ is ontworpen en geïmplementeerd in 1980 door Bjarne Stroustrup bij AT&T Bell Labs, waarbij de concepten van procedureel en objectgeoriënteerd programmeren prachtig samenvloeien..

In de C-taal wordt de operator ++ gebruikt om een ​​variabele te verhogen, waardoor Stroustrup's idee dat C ++ de volgende generatie van de C-taal is, zichtbaar wordt.

Eerste uitgave

C ++ werd in 1985 voor het eerst op de markt uitgebracht. In 1986 publiceerde Stroustrup zijn beroemde boek genaamd De programmeertaal C++, wordt de taalreferentiehandleiding.

C 2.0

De belangrijkste release van C ++ was C 2.0 in 1989, gedocumenteerd door Ellis en Stroustrup in C's geannoteerde referentiehandleiding++. Het was een totaal objectgeoriënteerde taal.

Gestandaardiseerde versie

De eerste gestandaardiseerde versie, C ++ 98, werd uitgebracht in 1998. Deze internationale standaard voor C ++ is ontwikkeld door het American National Standards Institute (ANSI) en de International Standards Organization (ISO).

In 2003 werd de volgende C ++ 03-standaard gepubliceerd met de bedoeling om fouten die in C ++ 98 werden geïdentificeerd te corrigeren en ervoor te zorgen dat de taal beter overdraagbaar en consistent was.

Recente updates

De volgende grote update van de taal kwam in 2011 en heette C ++ 11. Er zijn verschillende functies toegevoegd om de runtime-prestaties te verbeteren..

Toen werd C ++ 14 uitgebracht, waar enkele verbeteringen werden aangebracht en bugs in C ++ 11 werden verholpen.De volgende versie die in 2017 werd uitgebracht, was C ++ 17, die verschillende nieuwe functies en een veel uitgebreidere standaardbibliotheek heeft..

Kenmerken van C++

Populaire taal

C ++ wordt veel gebruikt door ontwikkelaars, voornamelijk in applicaties. Het bevat alle belangrijke onderdelen, zoals een centrale taal die alle benodigde ontwikkelblokken biedt, zoals variabelen, datatypes, literals, etc..

Het is de vierde meest populaire programmeertaal, volgens de index van de TIOBE-programmeergemeenschap.

Het gebruik van C ++ maakt het de handigste taal vanwege zijn kenmerken. Het is de eerste opstarttaal voor elke ontwikkelaar die geïnteresseerd is in het werken met programmeertalen. Het is gemakkelijk te leren omdat het een puur op concepten gebaseerde taal is.

De syntaxis is heel eenvoudig, waardoor het gemakkelijk is om te schrijven en fouten kunnen gemakkelijk worden gerepliceerd. Voordat programmeurs een andere taal gebruikten, gaven ze er de voorkeur aan eerst C ++ te leren en daarna andere talen te gebruiken..

De meeste ontwikkelaars proberen echter bij C ++ te blijven vanwege de grote verscheidenheid aan gebruik en compatibiliteit met meerdere platforms en software..

Object georiënteerd

De belangrijkste upgrade van C naar C ++ is objectgeoriënteerd programmeren. Dit betekent dat de focus ligt op de "objecten" en de behandeling rondom deze objecten..

Volg de concepten van polymorfisme, overerving, inkapseling en abstractie, waardoor ontwikkeling en onderhoud wordt vergemakkelijkt.

Procedureel

C ++ ondersteunt het concept van procedures en subroutines, die codesegmenten omsluiten in herbruikbare blokken, die kunnen worden "opgeroepen" om individuele taken uit te voeren.

Procedures en subroutines staan ​​bekend als functies in C ++. Een functie kan nul of meer parameters aannemen en nul of een waarde retourneren.

Gestructureerd programmeren

De code in C ++ is modulair, met ondersteuning van functies, klassen en objecten, waarbij de modules vrij kunnen worden gekoppeld.

De flow control-statements in C ++ zijn vergelijkbaar met die in veel andere gestructureerde programmeertalen. Dit zijn if-else om beslissingslogica te implementeren, en for, while en do-while om iteraties of lussen te implementeren..

Geheugen management

C ++ ondersteunt dynamische geheugentoewijzing. Zo kunt u het toegewezen geheugen op elk moment vrijmaken.

Aanwijzers

Het zijn variabelen die het adres van een andere variabele opslaan. De aanwijzer wijst naar de geheugenlocatie van een variabele. C ++ ondersteunt verwijzingen om oplossingen te bieden voor veel problemen die toegang tot de geheugenlocatie vereisen.

Gecompileerde taal

Voordat het kan worden uitgevoerd, moet een C ++ -programma worden vertaald in de oorspronkelijke instructies van de doelmachine door een programma dat een compiler wordt genoemd. Zonder compilatie kan geen enkel C ++ -programma worden uitgevoerd. De compiler compileert het C ++ -programma zodat het later kan worden uitgevoerd.

Gegevenstypen in C++

- Primair

Int

Het wordt gebruikt om hele getallen op te slaan. Het geheugen dat het inneemt, is afhankelijk van de compiler (32 of 64 bits). Neemt 4 bytes aan geheugen in beslag bij het werken met een 32-bits compiler.

Vlotter

Het wordt gebruikt om breuken van maximaal 7 decimalen op te slaan. Het staat bekend als een drijvende-komma-type met enkele precisie. Neemt 4 bytes aan geheugen in beslag.

Char

Het wordt gebruikt om een ​​set van alle karakters op te slaan. Het kan letters van het alfabet, cijfers en ook speciale tekens bevatten. Het neemt 1 byte aan geheugen in beslag en is de kleinste adresseerbare eenheid van een machine.

Dubbele

Het wordt gebruikt om breuken van maximaal 15-16 decimalen op te slaan. Meestal aangeduid als een type met dubbele precisie met drijvende komma.

Leeg (Null)

Geeft nul of geen retourwaarde aan. Over het algemeen gebruikt om de null-waarde toe te wijzen bij het declareren van een functie.

Bool

Dit gegevenstype verwijst naar een booleaanse of logische waarde. Het kan de waarde true of false hebben.

- Ondergeschikt

Regelingen

Het is een set gegevens met hetzelfde type gegevens, waartoe toegang wordt verkregen via een algemene naam.

Aanwijzers

Het zijn in feite variabelen die worden gebruikt om het geheugenadres van een andere variabele op te slaan.

Kenmerken

Het is een groep zinnen die een specifieke taak uitvoeren. Functies zijn ingebouwde of door de gebruiker gedefinieerde bibliotheken.

- Gebruiker gedefinieerde

Structuren

Het is een soort gegevens waarin een verzameling van verschillende soorten gegevens kan worden gemaakt en toegankelijk via een object.

Unie

Biedt de mogelijkheid om verschillende soorten gegevens op dezelfde geheugenlocatie op te slaan.

Waar is C ++ voor? Toepassingen

Toepassingen

Veel applicaties op Adobe-systemen zijn ontwikkeld in C ++, zoals Illustrator, Photoshop, Adobe Premiere en Image Ready.

Besturingssystemen

C ++ wordt gebruikt in alle belangrijke besturingssystemen, zoals Linux, Windows en macOS, omdat het een programmeertaal op laag niveau is.

Samenstellers

De meeste compilers zijn geschreven in de taal C ++. Ook de compilers die worden gebruikt om andere talen te compileren, zoals C #, Java, etc..

Spellen

Het dient om de complexiteit van 3D-games te elimineren en hulpbronnen te optimaliseren. Bovendien is het compatibel met de multiplayer-optie in netwerken.

web browsers

Het maakt een snelle uitvoering en weergave van de afbeeldingen mogelijk, wat van cruciaal belang is voor huidige gebruikers, die inhoud willen die snel in webbrowsers kan verschijnen. C ++ werd gebruikt om de internetbrowsers Google Chrome en Mozilla Firefox te maken.

Internet van dingen

Verschillende Internet of Things-producten, zoals smartwatches, auto's, wasmachines, routers en switches, gebruiken C ++ omdat ze code nodig hebben die zo dicht mogelijk bij de hardware staat.

Cloud / gedistribueerde systemen

Het wordt gebruikt in de cloud in opslagsystemen en gedistribueerde systemen, waar schaalbare bestandssystemen nauw moeten samenwerken met de hardware en compatibiliteit met verschillende machines ook van cruciaal belang is..

Toegang tot databases

Het wordt gebruikt om open source databasesoftware te ontwikkelen. Een zeer populaire databasebeheersoftware die in organisaties wordt gebruikt, MySQL, is geschreven in C ++ dankzij de voordelen die het biedt.

Er zijn andere toepassingen die zijn gebaseerd op toegang tot databasesoftware, namelijk Wikipedia, Yahoo, YouTube, Quora, enz..

Voorbeelden

Dit programma ontvangt een positief geheel getal van de gebruiker en slaat dit op in de variabele n. Vervolgens wordt de for-lus uitgevoerd, die controleert of het ingevoerde getal perfect deelbaar is door i of niet.

De for-lus begint met een beginwaarde van i gelijk aan 2, waarbij de waarde van i bij elke iteratie toeneemt. Als het door de gebruiker ingevoerde nummer perfect deelbaar is door i, wordt isPrime ingesteld op false en zal het nummer geen priemgetal zijn.

Als het nummer echter niet perfect deelbaar is door i tot de testvoorwaarde i <= n / 2 sea verdadera significa que solo es divisible entre 1 y ese mismo número. Entonces, el número dado es un número primo.

Bibliotheken

Ontwikkelaars hebben toegang tot veel ingebouwde functies die worden geboden door de C ++ -taal. Dit bespaart tijd en versnelt de ontwikkeling. Enkele van de C ++ header-bestanden met de bijbehorende functionaliteiten zijn:

- iomanip: bevat streamhandlers die datastromen formatteren.

- iostream: bevat standaard invoer- en uitvoerfuncties.

- cstdlib: bevat de functie om getallen naar tekst te converteren en vice versa,

- cmath - Bevat wiskundebibliotheekfuncties, geheugentoewijzing, willekeurige getallen en verschillende andere hulpprogramma-functies.

- fstream: bevat functies die de invoer en uitvoer van bestanden naar schijf uitvoeren.

- ctime: bevat de functie om de tijd en datum af te handelen.

- geheugen: bevat klassen en functies die door de C ++ - standaardbibliotheek worden gebruikt om geheugen toe te wijzen.

Voordeel

Snelheid

Omdat C ++ een uitgebreide versie is van C, een programmeertaal op laag niveau, is het een van de snelste beschikbare talen. Dit maakt het nuttig in die gebieden waar de vereiste prestatie van cruciaal belang is..

Dicht bij hardware

C ++ is een van de programmeertalen die het dichtst bij hardware staat. Dit is erg voordelig in die ruimtes waar de software een nauwe relatie met de hardware moet hebben om efficiënt low-level support uit te voeren..

Efficiëntie

C ++ heeft een standaardbibliotheek met sjablonen die op grote schaal kunnen worden gebruikt bij het coderen. Deze bibliotheken bieden efficiënte algoritmen waarmee de programmeur tijd en moeite kan besparen die anders zou worden verspild aan het maken van code..

Vrijheid om programmeerstijlen te kiezen

C ++ ondersteunt ongeveer zeven verschillende coderingsstijlen, waardoor het een programmeertaal met meerdere modellen is. U kunt dus een stijl selecteren die past bij een bepaald gebruik, zonder dat u objecten hoeft te gebruiken.

Mogelijkheid om complexe problemen op te lossen

C ++ kan complexe problemen intuïtief oplossen door objecten te maken. Bovendien kunt u met C ++ -functies uw code verdelen in codeblokken die duidelijk, gemakkelijk te begrijpen en gemakkelijk te testen en aan te passen zijn..

Mogelijkheid om fouten te detecteren voordat ze worden uitgevoerd

C ++ heeft een statisch type, wat betekent dat de compiler geen aannames doet over wat de programmeur schrijft. Het voordeel is dat de compiler fouten en storingen kan opvangen voordat deze wordt uitgevoerd, wat op de lange termijn tijd kan besparen.

Nadelen

Gebruik van aanwijzingen

Aanwijzingen zijn een relatief moeilijk concept om te begrijpen en verbruiken ook veel geheugen. Misbruik van de aanwijzer kan ertoe leiden dat het systeem vastloopt of zich abnormaal gedraagt.

Een belangrijk probleem is wanneer de gegevens vanuit twee verschillende uitgangspunten naar hetzelfde wijzen, wat een aanzienlijk probleem veroorzaakt, waardoor verwarrende problemen binnen de codering ontstaan.

Veiligheidsproblemen

Hoewel objectgeoriënteerd programmeren veel beveiliging biedt voor de gegevens die worden verwerkt, zijn er nog steeds enkele beveiligingsproblemen vanwege de beschikbaarheid van vriendfuncties, globale variabelen en verwijzingen.

Geen vuilnisman

C ++ geeft de gebruiker volledige controle over het beheer van het computergeheugen. Het mist de functie van een garbage collector om automatisch onnodige gegevens uit te filteren en ondersteunt daarom geen dynamische geheugentoewijzing.

Afwezigheid van een draad

C ++ ondersteunt geen ingebouwde threads. Het concept van thread is relatief nieuw voor C ++, omdat het oorspronkelijk niet bestond. Nu kan C ++ lambda-functies ondersteunen.

Gecompileerde programma's

Als gecompileerde taal zijn uitvoerbare bestanden die door de compiler zijn gemaakt op basis van de broncode niet draagbaar en zullen ze alleen draaien op het doelplatform (hardware plus besturingssysteem) waarvoor ze zijn gecompileerd, of een compatibel binair platform..

Kan complex zijn

C ++ kan complex zijn, omdat het klassen toestaat, dit zijn functies met dezelfde naam. Daarom moet een symboolbehandelingssysteem worden gebruikt. Bovendien is het complex voor een zeer groot programma op hoog niveau. C ++ wordt vaak gebruikt voor platformspecifieke toepassingen.

Referenties

  1. Simplilearn (2020). C ++ programmeren voor beginners: geschiedenis, voordelen en toepassingen. Genomen van: simplilearn.com.
  2. Educba (2020). Gebruik van C ++ in de echte wereld. Genomen van: educba.com.
  3. Dmitrii Rassokhin (2020). De C ++ programmeertaal in cheminformatica en computationele chemie. Journal of Cheminformatics. Genomen uit: jcheminf.biomedcentral.com.
  4. Edureka! (2020). Wat zijn de 10 belangrijkste functies van C ++? Genomen uit: edureka.co.
  5. Aman Goel (2020). C ++ - taal: kenmerken, toepassingen, toepassingen en voordelen. Hack. Genomen uit: hackr.io.
  6. Steemit (2020). C ++: leer coderen. Geschiedenis, voordelen, nadelen van C ++ -taal. Genomen van: steemit.com.
  7. Gegevens Flair (2019). Leer gegevenstypen in C en C ++ met voorbeeld in slechts 4 minuten. Ontleend aan: data-flair.training.

Niemand heeft nog op dit artikel gereageerd.