- histórie
- Návrh a implementácia
- Počiatočné uvoľnenie
- C 2,0
- Štandardizovaná verzia
- Posledné aktualizácie
- Funkcie C ++
- Populárny jazyk
- Objektovo orientovaný
- procedurálne
- Štruktúrované programovanie
- Správa pamäte
- ukazovátka
- Zostavený jazyk
- Typy údajov v C ++
- - Primárny
- Int
- Plavák
- spáliť
- dvojitý
- Prázdne (Null)
- Bool
- - sekundárne
- dojednania
- ukazovátka
- Vlastnosti
- - Definované užívateľom
- štruktúry
- zväz
- Na čo slúži C ++? aplikácia
- aplikácia
- Operačné systémy
- prekladače
- hry
- Webové prehliadače
- Internet vecí
- Cloudové / distribuované systémy
- Prístup k databázam
- Príklady
- knižnice
- výhoda
- rýchlosť
- Blízko hardvéru
- efektívnosť
- Sloboda zvoliť si štýly programovania
- Schopnosť rozložiť zložité problémy
- Schopnosť odhaliť chyby pred vykonaním
- nevýhody
- Použitie ukazovateľov
- Problémy s bezpečnosťou
- Žiadny zberač odpadu
- Neprítomnosť vlákna
- Zostavené programy
- Môže byť zložité
- Referencie
C ++ je vylepšená a rozšírená verzia programovacieho jazyka C, ktorú vyvinul Stroustrup v roku 1979 ako súčasť svojho doktorandského projektu. Stroustrup navrhol to, čo nazval „triedami C“, ktoré sa neskôr nazývalo C ++, pretože veril, že existujúce programovacie jazyky majú obmedzenia a nie sú najlepšie pre veľké projekty.
Preto použil C na vývoj programovacieho jazyka, ktorý hľadal, pretože C bol efektívny jazyk a rýchlo sa ovládal.

Zdroj: pixabay.com
C ++ je univerzálny programovací jazyk, ktorý je vycibrený a výkonný. Tento kompilovaný jazyk vo voľnej forme sa najlepšie hodí pre programátorov na strednej úrovni.
Avšak tí, ktorí chcú začať programovať s C ++, zistia, že sa dokážu rýchlo naučiť programovacie koncepty, ktoré im v ich kariére urobia dlhú cestu.
Je kompatibilný s objektovo orientovaným programovaním a berie všetky jeho vlastnosti. Tieto koncepty odlišujú jazyk C ++ a používajú sa hlavne na vývoj aplikácií ľahkým a konceptuálnym spôsobom.
histórie
Návrh a implementácia
C ++ bol navrhnutý a implementovaný v roku 1980 Bjarne Stroustrup v AT&T Bell Labs, krásne spájajúci koncepty procedurálneho a objektovo orientovaného programovania.
V jazyku C sa operátor ++ používa na zvyšovanie premennej, čím sa prejavuje Stroustrupova myšlienka, že C ++ bude ďalšou generáciou jazyka C.
Počiatočné uvoľnenie
C ++ bol uvedený na trh prvýkrát v roku 1985. V roku 1986 vydal Stroustrup svoju slávnu knihu s názvom Programovací jazyk C ++, ktorá sa stala referenčnou príručkou jazyka.
C 2,0
Najdôležitejším vydaním C ++ bol C 2.0 v roku 1989, dokumentovaný Ellisom a Stroustrupom v The C ++ Annotated Reference Manual. Bol to úplne objektovo orientovaný jazyk.
Štandardizovaná verzia
Prvá štandardizovaná verzia, C ++ 98, bola vydaná v roku 1998. Táto medzinárodná norma pre C ++ bola vyvinutá Americkým národným normalizačným inštitútom (ANSI) a Medzinárodnou normalizačnou organizáciou (ISO).
V roku 2003 bola zverejnená nasledujúca norma C ++ 03 s cieľom opraviť chyby identifikované v C ++ 98 a zabezpečiť vyššiu prenosnosť a konzistentnosť jazyka.
Posledné aktualizácie
Ďalšia významná aktualizácia jazyka sa uskutočnila v roku 2011 a nazývala sa C ++ 11. Na zlepšenie výkonnosti v runtime prostredí bolo pridaných niekoľko funkcií.
Potom bol vydaný C ++ 14, kde boli urobené nejaké vylepšenia a opravy chýb C ++ 11. Ďalšia verzia vydaná v roku 2017 bola C ++ 17, ktorá má niekoľko nových funkcií a oveľa rozsiahlejšiu štandardnú knižnicu.
Funkcie C ++
Populárny jazyk
C ++ používajú vývojári najmä v aplikáciách. Obsahuje všetky dôležité časti, napríklad hlavný jazyk, ktorý poskytuje všetky požadované vývojové bloky, ako sú premenné, typy údajov, literály atď.
Podľa indexu programovacej komunity TIOBE je to štvrtý najobľúbenejší programovací jazyk.
Vďaka použitiu jazyka C ++ je vďaka svojim vlastnostiam najvýhodnejším jazykom. Je to prvý spúšťací jazyk pre všetkých vývojárov, ktorí majú záujem pracovať s programovacími jazykmi. Je ľahké sa ho naučiť, pretože ide o čisto konceptový jazyk.
Jeho syntax je veľmi jednoduchá, umožňuje ľahké písanie a chyby sa dajú ľahko replikovať. Pred použitím akéhokoľvek iného jazyka sa programátori radšej naučili najprv C ++ a potom používali iné.
Väčšina vývojárov sa však snaží držať C ++ kvôli svojej širokej škále použitia a kompatibilite s rôznymi platformami a softvérom.
Objektovo orientovaný
Hlavnou aktualizáciou z C na C ++ je objektovo orientované programovanie. To znamená, že dôraz sa kladie na „objekty“ a manipuláciu s nimi.
Sleduje koncepty polymorfizmu, dedičnosti, zapuzdrenia a abstrakcie, uľahčujúc vývoj a údržbu.
procedurálne
C ++ podporuje koncepciu procedúr a podprogramov, ktoré uzatvárajú segmenty kódu do opakovane použiteľných blokov, ktoré môžu byť „vykonávané“ na vykonávanie jednotlivých úloh.
Procedúry a podprogramy sú známe ako funkcie v C ++. Funkcia môže mať nulu alebo viac parametrov a vrátiť nulu alebo hodnotu.
Štruktúrované programovanie
C ++ kód je modulárny, s podporou funkcií, tried a objektov, pričom moduly sa voľne hodia.
Príkazy na riadenie toku v C ++ sú podobné ako v mnohých iných štruktúrovaných programovacích jazykoch. Ide o implementáciu logiky rozhodovania a implementáciu iterácií alebo slučiek na čas, na čas a na čas.
Správa pamäte
C ++ podporuje dynamické prideľovanie pamäte. Takto môžete kedykoľvek uvoľniť pridelenú pamäť.
ukazovátka
Sú to premenné, ktoré ukladajú adresu inej premennej. Ukazovateľ ukazuje na umiestnenie premennej v pamäti. C ++ podporuje ukazovatele, ktoré poskytujú riešenia mnohých problémov, ktoré vyžadujú prístup k umiestneniu pamäte.
Zostavený jazyk
Predtým, ako môže byť program C ++ spustený, musí byť preložený do natívnych pokynov cieľového počítača programom nazývaným kompilátor. Bez kompilácie nie je možné spustiť žiadny program C ++. Kompilátor kompiluje program C ++, aby sa neskôr mohol spustiť.
Typy údajov v C ++
- Primárny
Int
Používa sa na ukladanie celých čísel. Pamäť, ktorú zaberá, závisí od kompilátora (32 alebo 64 bitov). Pri práci s 32-bitovým kompilátorom zaberá 4 bajty pamäte.
Plavák
Používa sa na ukladanie zlomkov s presnosťou na 7 desatinných miest. Je známy ako jediný typ s presnou pohyblivou rádovou čiarkou. Zaberá 4 bajty pamäte.
spáliť
Používa sa na uloženie sady všetkých znakov. Môže obsahovať písmená abecedy, čísla a tiež špeciálne znaky. Zaberá 1 bajt pamäte, čo je najmenšia adresovateľná jednotka v stroji.
dvojitý
Používa sa na ukladanie zlomkov do 15-16 desatinných miest. Všeobecne sa označuje ako typ s pohyblivou rádovou čiarkou s dvojitou presnosťou.
Prázdne (Null)
Označuje nulovú alebo žiadnu návratnú hodnotu. Všeobecne sa používa na priradenie nulovej hodnoty pri deklarovaní funkcie.
Bool
Tento typ údajov sa týka booleovskej alebo logickej hodnoty. Môže mať hodnotu true alebo false.
- sekundárne
dojednania
Je to súbor údajov, ktoré majú rovnaký typ údajov, ku ktorým má prístup spoločný názov.
ukazovátka
V zásade ide o premenné, ktoré sa používajú na uloženie adresy v pamäti inej premennej.
Vlastnosti
Je to skupina viet, ktorá vykonáva konkrétnu úlohu. Funkcie sú vstavané alebo užívateľom definované knižnice.
- Definované užívateľom
štruktúry
Je to typ údajov, v ktorých je možné prostredníctvom objektu vytvoriť a získať prístup k rôznym typom údajov.
zväz
Poskytuje možnosť ukladať rôzne typy údajov na rovnakom mieste v pamäti.
Na čo slúži C ++? aplikácia
aplikácia
Mnoho aplikácií na systémoch Adobe je vyvíjaných v jazyku C ++, ako napríklad Illustrator, Photoshop, Adobe Premiere a Image Ready.
Operačné systémy
C ++ sa používa vo všetkých hlavných operačných systémoch, ako napríklad Linux, Windows a MacOS, pretože ide o programovací jazyk nízkej úrovne.
prekladače
Väčšina kompilátorov je napísaná v jazyku C ++. Tiež kompilátory, ktoré sa používajú na kompilovanie iných jazykov, napríklad C #, Java atď.
hry
Slúži na odstránenie zložitosti 3D hier a pomáha pri optimalizácii zdrojov. Okrem toho je kompatibilný s možnosťou pre viacerých hráčov v sieťach.
Webové prehliadače
Umožňuje rýchle vykonávanie a reprezentáciu grafiky, čo je rozhodujúce pre súčasných používateľov, ktorí požadujú obsah, ktorý sa môže rýchlo zobraziť vo webových prehľadávačoch. C ++ sa používa na výrobu internetových prehliadačov Google Chrome a Mozilla Firefox.
Internet vecí
Niektoré produkty spoločnosti Internet of Things, ako sú inteligentné hodinky, autá, práčky, smerovače a prepínače, používajú jazyk C ++, pretože vyžadujú kód, ktorý je čo najbližšie k hardvéru.
Cloudové / distribuované systémy
Používa sa v cloude v úložných systémoch a distribuovaných systémoch, kde škálovateľné súborové systémy musia úzko spolupracovať s hardvérom a kritická je aj kompatibilita s rôznymi počítačmi.
Prístup k databázam
Používa sa na vývoj softvéru s otvoreným zdrojom. Veľmi obľúbený softvér na správu databáz používaný v organizáciách, MySQL, je napísaný v jazyku C ++ vďaka výhodám, ktoré ponúka.
Existujú aj ďalšie aplikácie založené na prístupe k databázovému softvéru, ktorými sú Wikipedia, Yahoo, YouTube, Quora atď.
Príklady
Tento program dostane od používateľa kladné celé číslo a uloží ho do premennej n. Potom sa vykoná slučka for, ktorá skontroluje, či je zadané číslo dokonale deliteľné io alebo nie.
Slučka for for začína počiatočnou hodnotou i rovnou 2, zvyšujúcou hodnotu i pri každej iterácii. Ak je číslo zadané používateľom dokonale deliteľné i, isPrime je nastavené na false a toto číslo nebude prvočíslom.
Ak však číslo nie je úplne deliteľné i, kým nie sú splnené podmienky testu i <= n / 2, znamená to, že je deliteľné iba 1 a tým istým číslom. Takže dané číslo je prvočíslo.

knižnice
Vývojári majú prístup k mnohým vstavaným funkciám, ktoré poskytuje jazyk C ++. To šetrí čas a urýchľuje vývoj. Niektoré z hlavičkových súborov C ++ s poskytnutými funkciami sú:
- iomanip: obsahuje obslužné programy toku, ktoré formátujú toky údajov.
- iostream: obsahuje štandardné vstupné a výstupné funkcie.
- cstdlib: obsahuje funkciu na prevod čísiel na text a naopak,
- cmath: obsahuje matematické knižničné funkcie, pridelenie pamäte, náhodné čísla a rôzne ďalšie užitočné funkcie.
- fstream: obsahuje funkcie, ktoré vykonávajú vstup a výstup súborov na disku.
- ctime: obsahuje funkciu spracovania času a dátumu.
- pamäť: obsahuje triedy a funkcie, ktoré používa štandardná knižnica C ++ na pridelenie pamäte.
výhoda
rýchlosť
Pretože C ++ je rozšírená verzia C, čo je programovací jazyk nízkej úrovne, je to jeden z najrýchlejších dostupných jazykov. Preto je užitočné v tých oblastiach, kde je požadovaný výkon kritický.
Blízko hardvéru
C ++ je jedným z programovacích jazykov, ktorý je najbližšie k hardvéru. To je veľmi výhodné v tých priestoroch, kde softvér musí mať úzky vzťah s hardvérom, aby sa mohla efektívne vykonávať podpora na nízkej úrovni.
efektívnosť
C ++ má štandardnú knižnicu šablón, ktorú je možné pri kódovaní široko používať. Tieto knižnice poskytujú efektívne algoritmy, ktoré umožňujú programátorovi ušetriť čas a úsilie, ktoré by inak boli zbytočne zbytočne tvoriace kód.
Sloboda zvoliť si štýly programovania
C ++ podporuje asi sedem rôznych štýlov kódovania, čo z neho robí multimodálny programovací jazyk. Môžete si teda vybrať štýl, ktorý vyhovuje konkrétnemu prípadu použitia, bez toho, aby ste museli používať objekty.
Schopnosť rozložiť zložité problémy
C ++ dokáže intuitívne riešiť zložité problémy vytváraním objektov. Funkcie C ++ vám navyše umožňujú rozdeliť kód do kódových blokov, ktoré sú jasné, ľahko zrozumiteľné a ľahko testovateľné a modifikovateľné.
Schopnosť odhaliť chyby pred vykonaním
C ++ má statický typ, čo znamená, že kompilátor nevytvára žiadne predpoklady o tom, čo programátor píše. Výhodou je, že kompilátor môže zachytiť chyby a zlyhania pred vykonaním, čo môže z dlhodobého hľadiska ušetriť čas.
nevýhody
Použitie ukazovateľov
Ukazovatele sú relatívne ťažké pochopiť pojem a tiež spotrebujú veľa pamäte. Zneužitie ukazovateľa môže spôsobiť neobvyklé zavesenie alebo správanie systému.
Hlavným problémom je to, keď údaje smerujú rovnako z dvoch rôznych počiatočných bodov, čo spôsobuje závažný problém, čo spôsobuje zmätok v kódovaní.
Problémy s bezpečnosťou
Aj keď objektovo orientované programovanie poskytuje údaje, ktoré sa spracúvajú, veľa zabezpečenia, stále existujú určité bezpečnostné problémy z dôvodu dostupnosti priateľských funkcií, globálnych premenných a ukazovateľov.
Žiadny zberač odpadu
C ++ dáva užívateľovi úplnú kontrolu nad spravovaním pamäte počítača. Chýba funkcia zberača odpadu na automatické odfiltrovanie nepotrebných údajov, a preto nepodporuje dynamické prideľovanie pamäte.
Neprítomnosť vlákna
C ++ nepodporuje zabudované vlákna. Koncept vlákna je v C ++ relatívne nový, pretože pôvodne neexistoval. Teraz je C ++ schopná podporovať funkcie lambda.
Zostavené programy
Ako kompilovaný jazyk nie sú spustiteľné súbory vytvorené kompilátorom zo zdrojového kódu prenosné a budú sa spúšťať iba na cieľovej platforme (hardvér plus operačný systém), pre ktorú boli kompilované, alebo na podporovanej binárnej platforme.
Môže byť zložité
C ++ môže byť komplexný, pretože umožňuje triedy, ktoré sú funkciami s rovnakým názvom. Preto sa musí použiť systém na manipuláciu so symbolmi. Okrem toho je to zložité pre veľmi veľký program na vysokej úrovni. C ++ sa bežne používa pre aplikácie špecifické pre platformu.
Referencie
- Simplilearn (2020). Programovanie v C ++ pre začiatočníkov: História, výhody a aplikácie. Prevzaté z: simplilearn.com.
- Educba (2020). Použitie C ++ v reálnom svete. Prevzaté z: educba.com.
- Dmitrii Rassokhin (2020). Programovací jazyk C ++ v cheminformatike a výpočtovej chémii. Journal of Cheminformatics. Prevzaté z: jcheminf.biomedcentral.com.
- Edureka! (2020). Aké sú top 10 vlastnosti C ++? Prevzaté z: edureka.co.
- Aman Goel (2020). Jazyk C ++: Funkcie, použitia, aplikácie a výhody. Hack. Prevzaté z: hackr.io.
- Steemit (2020). C ++: Naučte sa kódovať. História, výhody, nevýhody jazyka C ++. Prevzaté z: steemit.com.
- Data Flair (2019). Naučte sa typy údajov v C a C ++ s príkladom za 4 minúty. Prevzaté z: data-flair.training.
