- Történelem
- Tervezés és kivitelezés
- Első kiadás
- C 2.0
- Szabványosított változat
- Legutóbbi frissítések
- C ++ szolgáltatások
- Népszerű nyelv
- Objektum orientált
- Eljárási
- Strukturált programozás
- Memóriakezelés
- pointerek
- Összeállított nyelv
- Adattípusok C ++-ban
- - Elsődleges
- Int
- Úszó
- faszén
- Kettős
- Üres (Null)
- Bool
- - Másodlagos
- Megállapodások
- pointerek
- Jellemzők
- - Felhasználó által meghatározott
- struktúrák
- Unió
- Mi a C ++? Alkalmazások
- Alkalmazások
- Operációs rendszer
- Fordítóprogramok
- Játékok
- Webböngészők
- A dolgok internete
- Felhő / elosztott rendszerek
- Hozzáférés az adatbázisokhoz
- Példák
- könyvtárak
- Előny
- Sebesség
- Közel a hardverhez
- Hatékonyság
- A programozási stílusok választásának szabadsága
- Képesség bonyolult problémák lebontására
- Képes felismerni a hibákat a végrehajtás előtt
- hátrányok
- A mutatók használata
- Biztonsági kérdések
- Nincs hulladékgyűjtő
- Menet hiányzik
- Összeállított programok
- Lehet bonyolult
- Irodalom
A C ++ a C programozási nyelv továbbfejlesztett és kibővített változata, amelyet a Stroustrup fejlesztett ki 1979-ben Ph.D. projektjének részeként. Stroustrup megtervezte az úgynevezett „C osztályokkal”, amelyet később C ++ néven hívtak, mert azt hitte, hogy a meglévő programozási nyelveknek vannak korlátozásai, és nem voltak a legjobbak nagyszabású projektekhez.
Ezért használta a C-t a keresett programozási nyelv kifejlesztésére, mert a C hatékony nyelv volt és gyorsan működik.

Forrás: pixabay.com
A C ++ egy általános célú programozási nyelv, amely kifinomult és hatékony. Ez az összeállított, szabad formájú nyelv a legmegfelelőbb középszintű programozók számára.
Azonban azok, akik el akarják kezdeni a C ++ programozását, rájönnek, hogy gyorsan elsajátíthatják a programozási koncepciókat, amelyek hosszú utat jelentenek nekik karrierjük során.
Kompatibilis az objektum-orientált programozással, figyelembe véve az összes jellemzőjét. Ezek a fogalmak megváltoztatják a C ++ nyelvet, és főleg az alkalmazások egyszerű és koncepcionális fejlesztésére használják.
Történelem
Tervezés és kivitelezés
A C ++ -ot 1980-ban tervezte és hajtotta végre Bjarne Stroustrup, az AT&T Bell Labs, szépen összeolvasztva az eljárási és objektum-orientált programozás fogalmait.
A C nyelvben a ++ operátort használják egy változó inkrementálására, ezáltal megnyilvánulva Stroustrup azon gondolata, hogy a C ++ a C nyelv következő generációja.
Első kiadás
A C ++ 1985-ben jelent meg először a piacon. 1986-ban a Stroustrup kiadta a C ++ programozási nyelv nevû, híres könyvét, amely a nyelv referencia kézikönyvévé vált.
C 2.0
A C ++ legfontosabb kiadása a C 2.0 volt 1989-ben, amelyet Ellis és Stroustrup dokumentált a The C ++ Annotated Reference Manual-ban. Teljesen objektumorientált nyelv volt.
Szabványosított változat
Az első szabványosított változat, a C ++ 98, 1998-ban jelent meg. Ezt a C ++ szabványt az Amerikai Nemzeti Szabványügyi Intézet (ANSI) és a Nemzetközi Szabványügyi Szervezet (ISO) fejlesztette ki.
2003-ban a következő C ++ 03 szabványt tették közzé azzal a céllal, hogy kijavítsák a C ++ 98-ban azonosított hibákat, és biztosítsák a nyelv nagyobb hordozhatóságát és következetességét.
Legutóbbi frissítések
A nyelv következő jelentős frissítése 2011-ben érkezett, és C ++ 11 néven hívták fel. A futásidejű teljesítmény javítása érdekében számos funkcióval bővült.
Ezután megjelent a C ++ 14, ahol történt néhány fejlesztés és a C ++ 11. hibajavítások. A következő, 2017-ben kiadott verzió a C ++ 17 volt, amely számos új funkcióval és sokkal szélesebb körű standard könyvtárral rendelkezik.
C ++ szolgáltatások
Népszerű nyelv
A C ++ -ot a fejlesztők széles körben használják, főleg az alkalmazásokban. Ez tartalmazza az összes fontos részt, például egy olyan alapnyelvet, amely biztosítja az összes szükséges fejlesztési blokkot, például a változókat, az adattípusokat, a literálokat stb.
A TIOBE programozási közösség indexe szerint ez a negyedik legnépszerűbb programozási nyelv.
A C ++ használata jellemzői miatt a legkényelmesebb nyelvet teszi. Ez az első indítási nyelv minden fejlesztő számára, aki a programozási nyelvekkel foglalkozik. Könnyű megtanulni, mivel tisztán koncepció alapú nyelv.
Szintaxisa nagyon egyszerű, megkönnyíti az írást, és a hibák könnyen megismételhetők. Bármely más nyelv használata előtt a programozók inkább a C ++ elsajátítását, majd a többi nyelv használatát részesítették előnyben.
A legtöbb fejlesztő azonban megpróbálja ragaszkodni a C ++ -hoz, mivel a sokféle felhasználás és a több platformon és szoftverrel való kompatibilis.
Objektum orientált
A legfontosabb frissítés C-ről C ++ -ra az objektum-orientált programozás. Ez azt jelenti, hogy a hangsúly a "tárgyakra" és az objektumok körüli kezelésre koncentrál.
Ez követi a polimorfizmus, az öröklés, a kapszulázás és az absztrakció fogalmait, megkönnyítve a fejlesztést és a fenntartást.
Eljárási
A C ++ támogatja az eljárások és alprogramok fogalmát, amelyek a kód szegmenseit újrafelhasználható blokkokban foglalják magukban, amelyeket "fel lehet hívni" az egyes feladatok végrehajtására.
Az eljárások és szubrutinok a C ++ funkciói. Egy függvény nullát vagy annál több paramétert vehet fel, és nulla vagy egy értéket adhat vissza.
Strukturált programozás
A C ++ kód moduláris, funkciók, osztályok és objektumok támogatásával, a modulok szabadon illeszkednek.
Az áramlásszabályozó utasítások a C ++-ban hasonlóak sok más strukturált programozási nyelvben találhatóhoz. Ezek if-else a döntési logika megvalósításához, valamint az iterációk vagy hurkok végrehajtásához, miközben és közben is.
Memóriakezelés
A C ++ támogatja a dinamikus memóriaelosztást. Így bármikor felszabadíthatja a lefoglalt memóriát.
pointerek
Ezek olyan változók, amelyek egy másik változó címét tárolják. A mutató a változó memóriahelyére mutat. A C ++ támogatja a mutatókat, hogy megoldást kínáljon sok olyan problémára, amely megköveteli a memóriahely elérését.
Összeállított nyelv
Mielőtt végrehajtható, a C ++ programot fordítóprogramnak kell lefordítania a célgép natív utasításaiba. Összeállítás nélkül egyetlen C ++ program sem futtatható. A fordító lefordítja a C ++ programot, hogy később futhasson.
Adattípusok C ++-ban
- Elsődleges
Int
Egész számok tárolására szolgál. Az elfoglalt memória a fordítótól függ (32 vagy 64 bit). 32 bájt memóriát foglal el, amikor 32 bites fordítóval dolgozik.
Úszó
Legfeljebb 7 tizedes jegyű frakciók tárolására szolgál. Egyetlen pontosságú lebegőpontos típusnak nevezik. 4 bájt memóriát foglal el.
faszén
Az összes karakterkészlet tárolására szolgál. Tartalmazhat ábécé betűit, számokat és speciális karaktereket. 1 bájt memóriát foglal el, ez a gép legkisebb címezhető egysége.
Kettős
15-16 tizedes jegyig terjedő frakciók tárolására szolgál. Általában kettős pontosságú lebegőpontos típusnak nevezik.
Üres (Null)
Nulla vagy nincs visszatérési értéket jelöl. Általában a null érték hozzárendelésére szolgál egy funkció deklarálásakor.
Bool
Ez az adattípus logikai vagy logikai értékre utal. Értéke lehet a valódi vagy hamis érték.
- Másodlagos
Megállapodások
Ez egy olyan adathalmaz, amely azonos típusú adatokkal rendelkezik, és általános névvel fér hozzá.
pointerek
Alapvetően olyan változók, amelyeket egy másik változó memóriacímének tárolására használnak.
Jellemzők
Ez egy mondatcsoport, amely egy adott feladatot hajt végre. A funkciók beépített vagy felhasználó által meghatározott könyvtárak.
- Felhasználó által meghatározott
struktúrák
Ez egy olyan típusú adat, amelyben különféle típusú adatok gyűjthetők és egy objektumon keresztül elérhetők.
Unió
Lehetővé teszi különböző típusú adatok tárolását ugyanazon a memóriahelyen.
Mi a C ++? Alkalmazások
Alkalmazások
Az Adobe rendszereken számos alkalmazást fejlesztenek ki a C ++ rendszerben, például az Illustrator, a Photoshop, az Adobe Premiere és az Image Ready.
Operációs rendszer
A C ++ minden főbb operációs rendszerben, például a Linuxban, a Windowsban és a MacOS-ban használatos, mivel alacsony szintű programozási nyelv.
Fordítóprogramok
A legtöbb fordító C ++ nyelven íródott. Más nyelvek, például C #, Java stb. Fordításához használt fordítókat is.
Játékok
Ez a 3D-s játékok bonyolultságának kiküszöbölését szolgálja, hozzájárulva az erőforrások optimalizálásához. Ezen felül támogatja a multiplayer opciót a hálózatokban.
Webböngészők
Ez lehetővé teszi a grafika gyors végrehajtását és ábrázolását, ami kritikus jelentőségű a jelenlegi felhasználók számára, akik olyan tartalmat igényelnek, amely gyorsan megjelenhet a böngészőkben. A C ++ felhasználásával internetes böngészőket készítettek a Google Chrome és a Mozilla Firefox számára.
A dolgok internete
Számos tárgyak internetes terméke, például intelligens órák, autók, mosógépek, útválasztók és kapcsolók használják a C ++ -ot, mert a hardverhez legközelebb eső kódot igényelnek.
Felhő / elosztott rendszerek
A felhőben tároló és elosztott rendszerekben használják, ahol a méretezhető fájlrendszereknek szorosan együtt kell működniük a hardverrel, és a különféle gépekkel való kompatibilitás szintén kritikus jelentőségű.
Hozzáférés az adatbázisokhoz
Nyílt forráskódú adatbázis-szoftver fejlesztésére szolgál. A szervezetekben alkalmazott nagyon népszerű adatbázis-adminisztrációs szoftver, a MySQL, a C ++ nyelven íródott, az által nyújtott előnyöknek köszönhetően.
Vannak más, az adatbázis-szoftverekhez való hozzáférésen alapuló alkalmazások is, például a Wikipedia, a Yahoo, a YouTube, a Quora stb.
Példák
Ez a program pozitív egész számot kap a felhasználótól és tárolja az n változóban. Ezután végrehajtódik a for hurok, amely ellenőrzi, hogy a beírt szám tökéletesen osztható-ea io-val, vagy sem.
A for hurok i kezdeti értékével 2-gyel kezdődik, és minden iterációval növeli i értékét. Ha a felhasználó által bevitt szám tökéletesen osztható i-vel, az isPrime értéke hamis, és a szám nem lesz prímszám.
Ha azonban a szám nem osztható tökéletesen az i-vel, amíg az i <= n / 2 tesztfeltétel nem igaz, akkor ez azt jelenti, hogy csak 1-gyel osztható ugyanazzal a számmal. Tehát az adott szám egy prímszám.

könyvtárak
A fejlesztők számos beépített funkcióhoz férhetnek hozzá, amelyeket a C ++ nyelv biztosít. Ez időt takarít meg és felgyorsítja a fejlesztést. Néhány a C ++ fejléc fájlok azok szolgáltatott funkcióival:
- iomanip: adatfolyamkezelőket tartalmaz, amelyek formálják az adatfolyamokat.
- iostream: szabványos bemeneti és kimeneti funkciókat tartalmaz.
- cstdlib: tartalmazza a számok szöveggé konvertálását és fordítva, - cmath: matematikai könyvtár funkciókat, memóriaelosztást, véletlen számokat és számos egyéb hasznos funkciót tartalmaz.
- fstream: olyan funkciókat tartalmaz, amelyek a lemezen lévő fájlok be- és kimenetet hajtják végre.
- ctime: tartalmazza az idő és a dátum kezelésének funkcióját.
- memória: olyan osztályokat és funkciókat tartalmaz, amelyeket a C ++ standard könyvtár használ a memória elosztására.
Előny
Sebesség
Mivel a C ++ a C kibővített változata, amely alacsony szintű programozási nyelv, ez az egyik leggyorsabb nyelv. Ez hasznosá teszi azokat a területeket, ahol a szükséges teljesítmény kritikus jelentőségű.
Közel a hardverhez
A C ++ az egyik programozási nyelv, amely legközelebb van a hardverhez. Ez nagyon előnyös azokban a terekben, ahol a szoftvernek szoros kapcsolatban kell állnia a hardverrel az alacsony szintű támogatás hatékony végrehajtása érdekében.
Hatékonyság
A C ++ szabvány sablonkönyvtármal rendelkezik, amelyet széles körben használhatunk a kódoláshoz. Ezek a könyvtárak hatékony algoritmusokat nyújtanak, amelyek lehetővé teszik a programozónak, hogy időt és erőfeszítést takarítson meg, amelyek egyébként elkódolódnának a kód létrehozásakor.
A programozási stílusok választásának szabadsága
A C ++ körülbelül hét különféle kódolási stílust támogat, ami multi-modellező programozási nyelvgé teszi. Így kiválaszthat egy stílust, amely megfelel az adott felhasználási esetnek, anélkül, hogy objektumokat kellene használnia.
Képesség bonyolult problémák lebontására
A C ++ objektumok létrehozásával intuitív módon oldhatja meg az összetett problémákat. Ezenkívül a C ++ funkciók lehetővé teszik a kód megosztását kódblokkokba, amelyek egyértelműek, könnyen érthetőek, valamint tesztelhetők és módosíthatók.
Képes felismerni a hibákat a végrehajtás előtt
A C ++ statikus típusa van, ami azt jelenti, hogy a fordító nem tesz feltételezéseket a programozó által írtakról. Ennek az az előnye, hogy a fordító hibákat és kudarcokat tud végrehajtani a végrehajtás előtt, ami hosszú távon időt takaríthat meg.
hátrányok
A mutatók használata
A mutatók meglehetősen nehéz fogalom, és sok memóriát igényelnek. A mutató helytelen használata a rendszer lefagyását vagy rendellenes viselkedését okozhatja.
Fontos probléma az, amikor az adatok két különböző kiindulási pontról azonosak, és ez jelentős problémát okoz, és a kódolásban zavaros problémákat okoz.
Biztonsági kérdések
Bár az objektum-orientált programozás nagy biztonságot nyújt a kezelt adatok számára, továbbra is vannak bizonyos biztonsági problémák a barát funkciók, a globális változók és a mutatók rendelkezésre állása miatt.
Nincs hulladékgyűjtő
A C ++ lehetővé teszi a felhasználó számára a számítógép memória kezelésének teljes irányítását. Hiányzik a hulladékgyűjtő funkciója a szükségtelen adatok automatikus kiszűrésére, ezért nem támogatja a dinamikus memóriaelosztást.
Menet hiányzik
A C ++ nem támogatja a beépített szálakat. A szál fogalma viszonylag új a C ++-ban, mivel eredetileg nem létezett. Most a C ++ képes támogatni a lambda funkciókat.
Összeállított programok
Összeállított nyelvként a fordító által a forráskódból előállított futtatható fájlok nem hordozhatók, és csak azon a célplatformon (hardver és operációs rendszer) futnak, amelyhez fordításra kerültek, vagy egy támogatott bináris platformon.
Lehet bonyolult
A C ++ bonyolult lehet, mivel lehetővé teszi az osztályokat, amelyek azonos nevű függvények. Ezért szimbólumkezelő rendszert kell használni. Ezenkívül bonyolult egy nagyon nagy, magas szintű programhoz. A C ++ rendszert általában platformspecifikus alkalmazásokhoz használják.
Irodalom
- Simplilearn (2020). C ++ programozás kezdőknek: Előzmények, előnyök és alkalmazások. Forrás: simplilearn.com.
- Educba (2020). A C ++ felhasználása a való világban. Forrás: educationba.com.
- Dmitrii Rassokhin (2020). A C ++ programozási nyelv a kéminformatika és a számítási kémia területén. Cheminformatics Journal. Feltöltve: jcheminf.biomedcentral.com.
- Edureka! (2020). Melyek a C ++ 10 legfontosabb szolgáltatásai? Forrás: edureka.co.
- Aman Goel (2020). C ++ nyelv: Jellemzők, felhasználások, alkalmazások és előnyök. Csapkod. Feltöltve: hackr.io.
- Steemit (2020). C ++: Tanuld meg a kódolást. A C ++ nyelv története, előnyei, hátrányai. Forrás: steemit.com.
- Data Flair (2019). Ismerje meg az adattípusokat a C és a C ++ kategóriában, példával mindössze 4 perc alatt. Feltéve: data-flair.training.
