- Zgodovina
- Oblikovanje in izvedba
- Začetna sprostitev
- C 2.0
- Standardizirana različica
- Zadnje posodobitve
- Funkcije C ++
- Priljubljen jezik
- Objektno usmerjen
- Postopkovno
- Strukturirano programiranje
- Upravljanje spomina
- Kazalci
- Sestavljen jezik
- Vrste podatkov v C ++
- - Primarno
- Int
- Plovec
- Char
- Dvojna
- Prazno (ničelno)
- Bool
- - Sekundarni
- Dogovori
- Kazalci
- Lastnosti
- - Uporabnik definiran
- Strukture
- Zveza
- Za kaj je C ++? Prijave
- Prijave
- Operacijski sistemi
- Sestavljalci
- Igre
- Spletni brskalniki
- Internet stvari
- Cloud / Distributed Systems
- Dostop do baz podatkov
- Primeri
- Knjižnice
- Prednost
- Hitrost
- Blizu strojne opreme
- Učinkovitost
- Svoboda izbire stilov programiranja
- Sposobnost odpravljanja kompleksnih problemov
- Sposobnost odkrivanja napak pred izvedbo
- Slabosti
- Uporaba kazalcev
- Varnostna vprašanja
- Brez smeti
- Odsotnost niti
- Sestavljeni programi
- Lahko je zapleteno
- Reference
C ++ je izboljšana in razširjena različica programskega jezika C, ki jo je Stroustrup razvil leta 1979 v okviru svojega doktorskega projekta. Stroustrup je zasnoval tako imenovano "C z razredi", ki se je pozneje imenoval C ++, saj je verjel, da imajo obstoječi programski jeziki omejitve in niso najboljši za obsežne projekte.
Zato je za razvoj programskega jezika, ki ga je iskal, uporabil C, saj je bil C učinkovit jezik in hiter za uporabo.

Vir: pixabay.com
C ++ je programski jezik splošne namene, ki je izpopolnjen in zmogljiv. Ta sestavljeni jezik v prosti obliki je najbolj primeren za programerje na srednji ravni.
Vendar bodo tisti, ki želijo začeti programirati s C ++, ugotovili, da se lahko hitro naučijo konceptov programiranja, ki jim bodo v karieri prišli daleč.
Kompatibilen je s objektno usmerjenim programiranjem, pri čemer upošteva vse njegove značilnosti. Zaradi teh konceptov se jezik C ++ razlikuje in se v glavnem uporablja za enostavno razvijanje aplikacij.
Zgodovina
Oblikovanje in izvedba
C ++ je leta 1980 zasnoval in izvedel Bjarne Stroustrup v podjetju AT&T Bell Labs, ki lepo združuje koncepte postopkovnega in objektno naravnanega programiranja.
V jeziku C se operater ++ uporablja za povečanje spremenljivke, kar kaže Stroustrupovo idejo, da bi bil C ++ naslednja generacija jezika C.
Začetna sprostitev
C ++ je bil prvič izdan leta 1985 na trg. Leta 1986 je Stroustrup izdal svojo znamenito knjigo z naslovom Programski jezik C ++, ki je postala referenčni priročnik za jezik.
C 2.0
Najpomembnejša izdaja C ++ je bila C 2.0 leta 1989, ki sta jo Ellis in Stroustrup dokumentirala v C ++ Annotated Reference Manual. Bil je popolnoma objektno orientiran jezik.
Standardizirana različica
Prva standardizirana različica C ++ 98 je bila izdana leta 1998. Ta mednarodni standard za C ++ sta razvila Ameriški nacionalni inštitut za standarde (ANSI) in Mednarodna organizacija za standardizacijo (ISO).
Leta 2003 je bil objavljen naslednji standard C ++ 03 z namenom popraviti napake, opredeljene v C ++ 98 in zagotoviti, da je jezik imel večjo prenosljivost in doslednost.
Zadnje posodobitve
Naslednja velika posodobitev jezika je prišla leta 2011 in imenovala jo je C ++ 11. Za izboljšanje zmogljivosti izvajanja je bilo dodanih več funkcij.
Nato je bil izdan C ++ 14, kjer so bile narejene nekatere izboljšave in popravki napak C ++ 11. Naslednja različica, izdana leta 2017, je bila C ++ 17, ki ima več novih funkcij in veliko bolj obsežno standardno knjižnico.
Funkcije C ++
Priljubljen jezik
C ++ pogosto uporabljajo razvijalci, predvsem v aplikacijah. Vsebuje vse pomembne dele, kot je jedrni jezik, ki zagotavlja vse zahtevane razvojne bloke, kot so spremenljivke, vrste podatkov, dobesedni podatki itd.
Po indeksu programske skupnosti TIOBE je četrti najpopularnejši programski jezik.
Zaradi C ++ je zaradi svojih značilnosti najprimernejši jezik. To je prvi zagonski jezik za vsakega razvijalca, ki ga zanima delo s programskimi jeziki. Učiti se je enostavno, saj gre za povsem zasnovan jezik.
Njegova skladnja je zelo preprosta, zato je enostavno pisati, napake pa je mogoče enostavno ponoviti. Pred uporabo katerega koli drugega jezika so se programerji raje najprej naučili C ++ in nato uporabili druge.
Vendar se večina razvijalcev poskuša držati C ++ zaradi široke raznolikosti uporabe in združljivosti z več platformami in programsko opremo.
Objektno usmerjen
Glavna nadgradnja s C na C ++ je objektno usmerjeno programiranje. To pomeni, da je poudarek na "predmetih" in ravnanju s temi predmeti.
Sledi konceptom polimorfizma, dedovanja, kapsulacije in abstrakcije, kar olajša razvoj in vzdrževanje.
Postopkovno
C ++ podpira koncept postopkov in podprogramov, ki segmentirajo kodo v bloke za večkratno uporabo, ki jih je mogoče "poklicati" za izvajanje posameznih nalog.
Postopki in podprogrami so znani kot funkcije v C ++. Funkcija lahko sprejme nič ali več parametrov in vrne nič ali vrednost.
Strukturirano programiranje
Koda C ++ je modularna, s podporo funkcij, razredov in predmetov, pri čemer se moduli prosto prilegajo.
Stavki za nadzor pretoka v C ++ so podobni tistim v mnogih drugih strukturiranih programskih jezikih. To so if-else za izvajanje logike odločanja in za, while in do, medtem ko izvajate iteracije ali zanke.
Upravljanje spomina
C ++ podpira dinamično dodeljevanje pomnilnika. Tako lahko dodeljeni pomnilnik kadar koli sprostite.
Kazalci
So spremenljivke, ki hranijo naslov druge spremenljivke. Kazalec kaže na pomnilnik lokacije spremenljivke. C ++ podpira kazalce za reševanje številnih težav, za katere je potreben dostop do pomnilniškega mesta.
Sestavljen jezik
Preden ga je mogoče izvesti, mora program C ++ v izvorne napotke ciljne naprave prevesti program, imenovan prevajalnik. Brez kompilacije se noben program C ++ ne more zagnati. Prevajalnik sestavi program C ++, da ga je mogoče kasneje zagnati.
Vrste podatkov v C ++
- Primarno
Int
Uporablja se za shranjevanje celih številk. Pomnilnik, ki ga zaseda, je odvisen od prevajalnika (32 ali 64 bitov). Pri delu z 32-bitnim prevajalnikom zaseda 4 bajte pomnilnika.
Plovec
Uporablja se za shranjevanje ulomkov do 7 decimalnih števk. Znana je kot enotna natančna vrsta plavajoče točke. Zaseda 4 bajte pomnilnika.
Char
Uporablja se za shranjevanje nabora vseh znakov. Vključuje lahko črke abecede, številke in tudi posebne črke. Zaseda 1 bajt pomnilnika in je najmanjša naslovna enota v stroju.
Dvojna
Uporablja se za shranjevanje ulomkov do 15-16 decimalnih števk. Na splošno je znan kot plavajoča točka z dvojno natančnostjo.
Prazno (ničelno)
Označuje nič ali brez povratne vrednosti. Na splošno se uporablja za dodelitev ničelne vrednosti pri razglasitvi funkcije.
Bool
Ta vrsta podatkov se nanaša na logično ali logično vrednost. Lahko sprejme vrednost resničnega ali napačnega.
- Sekundarni
Dogovori
Gre za niz podatkov, ki imajo isto vrsto podatkov, do katerih dostopa splošno ime.
Kazalci
V osnovi so spremenljivke, ki se uporabljajo za shranjevanje pomnilniškega naslova druge spremenljivke.
Lastnosti
Gre za skupino stavkov, ki opravljajo določeno nalogo. Funkcije so vgrajene ali uporabniško določene knjižnice.
- Uporabnik definiran
Strukture
Gre za vrsto podatkov, v katerih je mogoče skozi objekt zbirati in dostopati do zbirke različnih vrst podatkov.
Zveza
Ponuja možnost shranjevanja različnih vrst podatkov na isti pomnilniški prostor.
Za kaj je C ++? Prijave
Prijave
Številne aplikacije v sistemih Adobe so razvite v C ++, kot so Illustrator, Photoshop, Adobe Premiere in Image Ready.
Operacijski sistemi
C ++ se uporablja v vseh glavnih operacijskih sistemih, kot so Linux, Windows in macOS, saj je programski jezik na nizki ravni.
Sestavljalci
Večina prevajalnikov je napisana v jeziku C ++. Tudi prevajalnike, ki se uporabljajo za sestavljanje drugih jezikov, na primer C #, Java itd.
Igre
Služi za odpravo kompleksnosti 3D iger, pomaga pri optimizaciji virov. Poleg tega je združljiv z možnostjo za več igralcev v omrežjih.
Spletni brskalniki
Omogoča hitro izvajanje in zastopanje grafike, kar je ključno za sedanje uporabnike, ki zahtevajo vsebino, ki se lahko hitro prikaže v spletnih brskalnikih. Za izdelavo internetnih brskalnikov Google Chrome in Mozilla Firefox so uporabljali C ++.
Internet stvari
Več izdelkov Internet of Things, kot so pametne ure, avtomobili, pralni stroji, usmerjevalniki in stikala, uporablja C ++, ker zahtevajo kodo, ki je čim bližje strojni opremi.
Cloud / Distributed Systems
Uporablja se v oblaku v sistemih za shranjevanje in porazdeljenih sistemih, kjer morajo razširljivi datotečni sistemi tesno sodelovati s strojno opremo, ključnega pomena pa je tudi združljivost z različnimi stroji.
Dostop do baz podatkov
Uporablja se za razvoj programske opreme z odprtokodno zbirko podatkov. Zelo priljubljena programska oprema za upravljanje podatkovnih baz, ki se uporablja v organizacijah, MySQL, je napisana v jeziku C ++ zahvaljujoč ugodnosti, ki jih ponuja.
Obstajajo tudi druge aplikacije, ki temeljijo na dostopu do programske opreme baze podatkov, in sicer Wikipedia, Yahoo, YouTube, Quora itd.
Primeri
Ta program od uporabnika prejme pozitivno celo število in ga shrani v spremenljivko n. Nato se izvede zanka zanke, ki preveri, ali je vnešena številka popolnoma deljiva z io ali ne.
Zanka for se začne z začetno vrednostjo i, ki je enaka 2, z vsako ponovitvijo se poveča vrednost i. Če je številka, ki jo je vnesel uporabnik, i popolnoma razdeljena, je isPrime nastavljen na napačno in številka ne bo preprosta številka.
Če pa število ni popolnoma deljivo z i, dokler preskusni pogoj i <= n / 2 ni res, pomeni, da je deljivo le z 1 in z istim številom. Torej je dano število prvo število.

Knjižnice
Razvijalci imajo dostop do številnih vgrajenih funkcij, ki jih zagotavlja jezik C ++. To prihrani čas in pospeši razvoj. Nekatere glave glave C ++ s svojimi ponujenimi funkcijami so:
- iomanip: vsebuje sredstva za obdelavo tokov, ki formatirajo podatkovne tokove.
- iostream: vsebuje standardne vhodne in izhodne funkcije.
- cstdlib: vsebuje funkcijo pretvorbe števil v besedilo in obratno,
- cmath: vsebuje matematične knjižnične funkcije, dodelitev pomnilnika, naključna števila in različne druge uporabne funkcije.
- fstream: vsebuje funkcije, ki izvajajo vnos in izhod datotek na disku.
- ctime: vsebuje funkcijo za urejanje časa in datuma.
- pomnilnik: vsebuje razrede in funkcije, ki jih standardna knjižnica C ++ uporablja za dodelitev pomnilnika.
Prednost
Hitrost
Ker je C ++ razširjena različica C, ki je programski jezik na nizki ravni, je eden najhitrejših jezikov na voljo. To je koristno na tistih področjih, kjer je zahtevana zmogljivost kritična.
Blizu strojne opreme
C ++ je eden od programskih jezikov, ki je najbližji strojni opremi. To je zelo ugodno v tistih prostorih, kjer mora biti programska oprema tesno povezana s strojno opremo, da lahko učinkovito izvaja nizko podporo.
Učinkovitost
C ++ ima standardno knjižnico predlog, ki jih je mogoče široko uporabljati pri kodiranju. Te knjižnice zagotavljajo učinkovite algoritme, ki programerju omogočajo prihranek časa in truda, kar bi sicer zapravili pri ustvarjanju kode.
Svoboda izbire stilov programiranja
C ++ podpira približno sedem različnih stilov kodiranja, zaradi česar je programski jezik več modelov. Tako lahko izberete slog, ki ustreza določenemu primeru uporabe, ne da bi pri tem morali uporabljati predmete.
Sposobnost odpravljanja kompleksnih problemov
C ++ lahko zapletene težave intuitivno reši z ustvarjanjem predmetov. Poleg tega funkcije C ++ omogočajo razdelitev kode na bloke kod, ki so jasni, lahki za razumevanje ter enostavni za testiranje in spreminjanje.
Sposobnost odkrivanja napak pred izvedbo
C ++ ima statični tip, kar pomeni, da prevajalnik ne daje nobenih predpostavk o tem, kaj programer napiše. Prednost je v tem, da lahko prevajalnik loči napake in napake pred izvedbo, kar lahko dolgoročno prihrani čas.
Slabosti
Uporaba kazalcev
Kazalci so razmeroma težaven koncept in razumejo tudi veliko pomnilnika. Z napačno uporabo kazalca lahko sistem visi ali se obnaša nenormalno.
Glavna težava je, ko podatki kažejo enake z dveh različnih izhodišč, kar povzroča veliko težavo in povzroča zmede v kodiranju.
Varnostna vprašanja
Čeprav objektno usmerjeno programiranje zagotavlja veliko varnosti podatkov, ki se obdelujejo, še vedno obstajajo nekatere varnostne težave zaradi razpoložljivosti prijateljskih funkcij, globalnih spremenljivk in kazalcev.
Brez smeti
C ++ omogoča uporabniku popoln nadzor nad upravljanjem pomnilnika računalnika. Manjka mu funkcija zbiralnika smeti, da samodejno filtrira nepotrebne podatke in zato ne podpira dinamične razporeditve pomnilnika.
Odsotnost niti
C ++ ne podpira vgrajenih niti. Koncept niti je pri C ++ razmeroma nov, saj prvotno ni obstajal. Zdaj C ++ lahko podpira lambda funkcije.
Sestavljeni programi
Izvajalne datoteke, ki jih pripravi prevajalnik iz izvorne kode, niso primerne za prenos in se bodo izvajale samo na ciljni platformi (strojna oprema in operacijski sistem), za katero so bile sestavljene, ali na podprti binarni platformi.
Lahko je zapleteno
C ++ je lahko zapleten, saj omogoča razrede, ki so funkcije z istim imenom. Zato je treba uporabiti sistem za ravnanje s simboli. Poleg tega je kompleksen za zelo velik program na visoki ravni. C ++ se običajno uporablja za aplikacije, specifične za platformo.
Reference
- Simplilearn (2020). Programiranje C ++ za začetnike: Zgodovina, prednosti in aplikacije. Vzeto iz: simplelearn.com.
- Educba (2020). Uporaba C ++ v realnem svetu. Izvedeno iz: educba.com.
- Dmitrij Rassokhin (2020). Programski jezik C ++ v keminformatiki in računski kemiji. Časopis za kemijsko informatiko. Izvedeno iz: jcheminf.biomedcentral.com.
- Edureka! (2020). Katere so najboljših 10 funkcij C ++? Vzeto iz: edureka.co.
- Aman Goel (2020). Jezik C ++: Funkcije, uporabe, aplikacije in prednosti. Hack. Vzeto iz: hackr.io.
- Steemit (2020). C ++: Naučite se kodiranja. Zgodovina, prednosti, slabosti jezika C ++. Vzeto iz: steemit.com.
- Data Flair (2019). Naučite se podatkovnih tipov v C in C ++ s primerom v samo 4 minutah. Izvedeno iz: data-flair.training.
