- Kasaysayan
- Disenyo at pagpapatupad
- Paunang paglabas
- C 2.0
- Na-standard na bersyon
- Kamakailang mga update
- Mga Tampok ng C ++
- Tanyag na wika
- Nakatuon ang object
- Pamamaraan
- Nakabalangkas na programming
- Pamamahala ng kaisipan
- Mga Punto
- Hinahalong wika
- Mga uri ng data sa C ++
- - Pangunahing
- Int
- Lumutang
- Char
- Doble
- Walang laman (Null)
- Bool
- - Pangalawa
- Pag-aayos
- Mga Punto
- Mga Tampok
- - Tinukoy ng gumagamit
- Mga istruktura
- Unyon
- Ano ang C ++ para sa? Aplikasyon
- Aplikasyon
- Mga operating system
- Mga Compiler
- Mga Laro
- Mga browser sa web
- Internet ng mga bagay
- Cloud / Ipinamamahaging mga System
- Pag-access sa mga database
- Mga halimbawa
- Mga Aklatan
- Kalamangan
- Bilis
- Malapit sa hardware
- Kahusayan
- Kalayaan na pumili ng mga estilo ng programming
- Kakayahang masira ang mga komplikadong problema
- Kakayahang upang makita ang mga error bago pagpatay
- Mga Kakulangan
- Paggamit ng mga payo
- Mga isyu sa seguridad
- Walang maniningil ng basura
- Pagkawala ng isang thread
- Mga programang pinagsama-sama
- Maaaring maging kumplikado
- Mga Sanggunian
Ang C ++ ay isang pinahusay at pinalawak na bersyon ng C programming language, na binuo ni Stroustrup noong 1979 bilang bahagi ng kanyang proyekto sa Ph.D. Dinisenyo ni Stroustrup ang tinawag niyang "C kasama ang mga klase," na kung saan ay tinawag na C ++, dahil naniniwala siya na ang mga umiiral na wika ng programming ay may mga limitasyon at hindi ito ang pinakamahusay para sa mga malalaking proyekto.
Iyon ang dahilan kung bakit ginamit niya C upang mapaunlad ang wika ng programming na hinahanap niya, dahil ang C ay isang mabisang wika at mabilis na gumana.
Pinagmulan: pixabay.com
Ang C ++ ay isang pangkalahatang layunin ng programming language na pino at malakas. Ang pinagsama-sama, libreng form na wika ay pinaka-angkop para sa mga tagapamagitan ng antas ng antas.
Gayunpaman, ang mga nagnanais na magsimulang magprograma sa C ++ ay matutuklasan nila na mabilis na matutunan ang mga konsepto sa programming na tatagal ng mga ito sa kanilang karera.
Ito ay katugma sa programming na nakatuon sa object, na kinukuha ang lahat ng mga katangian nito. Ginagawa ng mga konseptong ito ang wika ng C ++ at higit sa lahat ito ay ginagamit upang bumuo ng mga application sa isang madaling at konseptong paraan.
Kasaysayan
Disenyo at pagpapatupad
Ang C ++ ay dinisenyo at ipinatupad noong 1980 sa pamamagitan ng Bjarne Stroustrup sa AT&T Bell Labs, maganda ang pagsasama-sama ng mga konsepto ng pamamaraan at programming-oriented na programa.
Sa wikang C ang operator ++ ay ginagamit upang madagdagan ang isang variable, sa gayon ipinapakita ang ideya ni Stroustrup na ang C ++ ay magiging susunod na henerasyon ng wikang C.
Paunang paglabas
Ang C ++ ay pinakawalan noong 1985 sa kauna-unahang pagkakataon sa merkado. Noong 1986, inilathala ni Stroustrup ang kanyang tanyag na aklat na tinawag na The C ++ Programming Language, at naging manwal na sanggunian para sa wika.
C 2.0
Ang pinakamahalagang paglabas ng C ++ ay C 2.0 noong 1989, na dokumentado ni Ellis at Stroustrup sa The C ++ Annotated Reference Manual. Ito ay isang ganap na object-oriented na wika.
Na-standard na bersyon
Ang unang standardized na bersyon, C ++ 98, ay inilabas noong 1998. Ang pang-internasyonal na pamantayang ito para sa C ++ ay binuo ng American National Standards Institute (ANSI) at ang International Standards Organization (ISO).
Noong 2003, ang sumusunod na pamantayang C ++ 03 ay nai-publish na may hangarin na iwasto ang mga pagkakamali na kinilala sa C ++ 98 at tinitiyak na ang wika ay may mas malaking kakayahang magamit at pagkakapare-pareho.
Kamakailang mga update
Ang susunod na pangunahing pag-update sa wika ay dumating noong 2011, at tinawag itong C ++ 11. Maraming mga tampok ang naidagdag upang mapabuti ang pagganap ng runtime nito.
Pagkatapos ay inilabas ang C ++ 14, kung saan ang ilang mga pagpapabuti ay ginawa at mga pag-aayos ng C ++ 11. Ang susunod na bersyon na inilabas sa 2017 ay C ++ 17, na mayroong maraming mga bagong tampok at isang mas malawak na pamantayang library.
Mga Tampok ng C ++
Tanyag na wika
Ang C ++ ay malawakang ginagamit ng mga developer, higit sa lahat sa mga aplikasyon. Naglalaman ito ng lahat ng mga mahahalagang bahagi, tulad ng isang pangunahing wika na nagbibigay ng lahat ng kinakailangang mga bloke ng pag-unlad, tulad ng mga variable, uri ng data, literatura, atbp.
Ito ang ika-apat na pinakapopular na wika ng programming, ayon sa index ng pamayanan ng TIOBE.
Ang mga gamit ng C ++ ay ginagawa itong pinaka maginhawang wika, dahil sa mga katangian nito. Ito ang unang wika ng pagsisimula para sa anumang nag-develop na interesado na magtrabaho sa mga wika sa programa. Madali itong matutunan dahil ito ay isang simpleng wika na batay sa konsepto.
Ang syntax nito ay napaka-simple, ginagawang madali itong isulat, at ang mga pagkakamali ay maaaring madaling sagutin. Bago gamitin ang anumang iba pang wika, ginusto ng mga programmer na matutunan muna ang C ++ at pagkatapos ay gamitin ang iba.
Gayunpaman, sinubukan ng karamihan sa mga developer na dumikit sa C ++ dahil sa malawak na iba't ibang paggamit at pagiging tugma sa maraming mga platform at software.
Nakatuon ang object
Ang pangunahing pag-upgrade mula sa C hanggang C ++ ay ang object-oriented na programming. Nangangahulugan ito na ang pokus ay nasa "mga bagay" at ang paghawak sa paligid ng mga bagay na ito.
Sinusundan nito ang mga konsepto ng polymorphism, mana, encapsulation at abstraction, pinadali ang pag-unlad at pagpapanatili.
Pamamaraan
Sinusuportahan ng C ++ ang konsepto ng mga pamamaraan at subroutines, na nakapaloob sa mga segment ng code sa mga magagamit na mga bloke, na maaaring "tinawag" upang maisagawa ang mga indibidwal na gawain.
Ang mga pamamaraan at subroutin ay kilala bilang mga pag-andar sa C ++. Ang isang function ay maaaring tumagal ng zero o higit pang mga parameter, at bumalik sa zero o isang halaga.
Nakabalangkas na programming
Ang C ++ code ay modular, sa suporta ng mga pag-andar, klase at bagay, malayang umaangkop ang mga module.
Ang mga pahayag ng daloy ng control control sa C ++ ay katulad sa mga matatagpuan sa maraming iba pang mga nakaayos na wika ng programming. Ito ay kung-sino pa upang ipatupad ang lohika ng pagpapasya, at para sa, habang, at gawin-habang upang ipatupad ang mga iterasyon o mga loop.
Pamamahala ng kaisipan
Sinusuportahan ng C ++ ang dynamic na paglalaan ng memorya. Kaya, maaari mong palayain ang inilalaan na memorya sa anumang oras.
Mga Punto
Ang mga ito ay variable na nag-iimbak ng address ng isa pang variable. Ang pointer point sa lokasyon ng memorya ng isang variable. Sinusuportahan ng C ++ ang mga payo upang magbigay ng mga solusyon sa maraming mga problema na nangangailangan ng pag-access sa lokasyon ng memorya.
Hinahalong wika
Bago ito maisakatuparan, ang isang C ++ na programa ay dapat isalin sa katutubong tagubilin ng target na makina sa pamamagitan ng isang programa na tinatawag na isang tagatala. Kung walang compilation, walang C ++ na programa ang maaaring tumakbo. Ang compiler ay nag-iipon ng C ++ na programa upang maaari itong tumakbo sa paglaon.
Mga uri ng data sa C ++
- Pangunahing
Int
Ginagamit ito upang mag-imbak ng buong mga numero. Ang memorya na nasasakup nito ay nakasalalay sa tagatala (32 o 64 bits). Sinasakop nito ang 4 na bait ng memorya kapag nagtatrabaho sa isang 32-bit compiler.
Lumutang
Ginagamit ito upang mag-imbak ng mga praksyon hanggang sa 7 decimal na numero. Ito ay kilala bilang isang solong uri ng floating point type. Sinasakop nito ang 4 na bait ng memorya.
Char
Ginagamit ito upang mag-imbak ng isang hanay ng lahat ng mga character. Maaari itong isama ang mga titik ng alpabeto, numero, at mga espesyal na character din. Sinasakop nito ang 1 bait ng memorya, na ang pinakamaliit na addressable unit sa isang makina.
Doble
Ginamit upang mag-imbak ng mga piyesa hanggang sa 15-16 decimal na numero. Sa pangkalahatan ito ay kilala bilang isang dobleng uri ng lumulutang point point.
Walang laman (Null)
Nagpapahiwatig ng zero o walang halaga ng pagbabalik. Karaniwang ginagamit upang italaga ang null na halaga kapag nagpapahayag ng isang function.
Bool
Ang uri ng data na ito ay tumutukoy sa isang Boolean o lohikal na halaga. Maaari nitong kunin ang halaga ng totoo o mali.
- Pangalawa
Pag-aayos
Ito ay isang hanay ng data na may parehong uri ng data, na na-access ng isang karaniwang pangalan.
Mga Punto
Ang mga ito ay karaniwang variable na ginagamit upang mag-imbak ng memorya ng memorya ng isa pang variable.
Mga Tampok
Ito ay isang pangkat ng mga pangungusap na nagsasagawa ng isang tiyak na gawain. Mga function ay built-in o tinukoy ng gumagamit ng mga aklatan.
- Tinukoy ng gumagamit
Mga istruktura
Ito ay isang uri ng data kung saan ang isang koleksyon ng iba't ibang uri ng data ay maaaring gawin at mai-access sa pamamagitan ng isang bagay.
Unyon
Nagbibigay ng kakayahang mag-imbak ng iba't ibang uri ng data sa parehong lokasyon ng memorya.
Ano ang C ++ para sa? Aplikasyon
Aplikasyon
Maraming mga aplikasyon sa mga system ng Adobe ang binuo sa C ++, tulad ng Illustrator, Photoshop, Adobe Premiere, at Handa ng Imahe.
Mga operating system
Ang C ++ ay ginagamit sa lahat ng mga pangunahing operating system, tulad ng Linux, Windows, at macOS, dahil ito ay isang mababang-level na wika sa programming.
Mga Compiler
Karamihan sa mga compiler ay nakasulat sa C ++ wika. Gayundin mga compiler na ginagamit upang mag-compile ng iba pang mga wika, tulad ng C #, Java, atbp.
Mga Laro
Naghahain ito upang maalis ang pagiging kumplikado ng mga 3D na laro, na tumutulong sa pag-optimize ng mga mapagkukunan. Bilang karagdagan, katugma ito sa pagpipilian ng Multiplayer sa mga network.
Mga browser sa web
Pinapayagan nito ang mabilis na pagpapatupad at representasyon ng mga graphic, na kritikal para sa kasalukuyang mga gumagamit, na humihiling ng nilalaman na maaaring lumitaw nang mabilis sa mga web browser. Ginamit ang C ++ upang gawin ang mga browser sa Internet na Google Chrome at Mozilla Firefox.
Internet ng mga bagay
Ang iba't ibang mga produkto ng Internet of Things, tulad ng mga matalinong relo, kotse, washing machine, router, at switch, ay gumagamit ng C ++ dahil nangangailangan sila ng code na malapit sa hardware hangga't maaari.
Cloud / Ipinamamahaging mga System
Ginagamit ito sa ulap sa mga sistema ng imbakan at mga ipinamamahagi na mga system, kung saan ang mga nasusukat na mga system ng file ay kailangang gumana nang malapit sa hardware at pagkakatugma sa iba't ibang mga makina ay kritikal din.
Pag-access sa mga database
Ginagamit ito upang bumuo ng bukas na software ng database ng mapagkukunan Ang isang napaka-tanyag na database ng pangangasiwa ng database na ginamit sa mga samahan, MySQL, ay nakasulat sa C ++ salamat sa mga benepisyo na ibinibigay nito.
Mayroong iba pang mga aplikasyon batay sa pag-access sa software ng database, na kung saan ay Wikipedia, Yahoo, YouTube, Quora, atbp.
Mga halimbawa
Tumatanggap ang program na ito ng isang positibong integer mula sa gumagamit at iniimbak ito sa variable n. Pagkatapos, ang para sa loop ay naisakatuparan, na sinusuri kung ang ipinasok na numero ay perpektong nahahati ng io o hindi.
Ang para sa loop ay nagsisimula sa isang paunang halaga ng i katumbas ng 2, ang pagtaas ng halaga ng i sa bawat pag-ulit. Kung ang numero na ipinasok ng gumagamit ay perpektong nahahati sa i, isPrime ay nakatakda sa maling at ang numero ay hindi magiging isang kalakasan na numero.
Gayunpaman, kung ang numero ay hindi perpektong nahahati sa akin hanggang sa ang kondisyon ng pagsubok ay <= n / 2 ay totoo, nangangahulugan ito na nahahati lamang ito ng 1 at ang parehong bilang. Kaya ang ibinigay na numero ay isang pangunahing numero.
Mga Aklatan
May access ang mga nag-develop sa maraming mga built-in na function na ibinigay ng C ++ wika. Makakatipid ito ng oras at pabilisin ang pag-unlad. Ang ilan sa mga file na header ng C ++ kasama ang kanilang ibinigay na mga pag-andar ay:
- iomanip: naglalaman ng mga handler ng daloy na format ang daloy ng data.
- Iostream: naglalaman ng mga karaniwang pag-andar at pag-andar ng output.
- cstdlib: naglalaman ng pag-andar upang i-convert ang mga numero sa teksto at kabaligtaran,
- cmath: naglalaman ng mga function sa library ng matematika, paglalaan ng memorya, random na mga numero, at iba't ibang iba pang mga kapaki-pakinabang na pag-andar.
- Fstream: naglalaman ng mga pag-andar na nagsasagawa ng input at output ng mga file sa disk.
- ctime: naglalaman ng pagpapaandar upang mahawakan ang oras at petsa.
- memorya: naglalaman ng mga klase at pag-andar na ginagamit ng C ++ Standard Library upang maglaan ng memorya.
Kalamangan
Bilis
Tulad ng C ++ ay isang pinahabang bersyon ng C, na kung saan ay isang mababang antas ng wika ng programming, ito ay isa sa pinakamabilis na magagamit na wika. Ginagawa nitong kapaki-pakinabang sa mga lugar na kung saan kritikal ang kinakailangang pagganap.
Malapit sa hardware
Ang C ++ ay isa sa mga wika sa programming na pinakamalapit sa hardware. Ito ay napaka-kapaki-pakinabang sa mga puwang na kung saan ang software ay dapat magkaroon ng isang malapit na relasyon sa hardware upang mahusay na magsagawa ng mababang antas ng suporta.
Kahusayan
Ang C ++ ay may isang karaniwang library ng mga template na maaaring magamit nang malawak kapag coding. Ang mga aklatang ito ay nagbibigay ng mahusay na mga algorithm na pinapayagan ang programmer na makatipid ng oras at pagsisikap, na kung hindi man ay nasasayang sa paglikha ng code.
Kalayaan na pumili ng mga estilo ng programming
Sinusuportahan ng C ++ ang tungkol sa pitong magkakaibang istilo ng pag-coding, na ginagawang isang wika ng programming na multi-modelo. Sa gayon, maaari kang pumili ng isang istilo na nababagay sa isang partikular na kaso ng paggamit, nang hindi kinakailangang gumamit ng mga bagay.
Kakayahang masira ang mga komplikadong problema
Maaari malutas ng C ++ ang mga kumplikadong problema nang madaling maunawaan sa pamamagitan ng paglikha ng mga bagay. Bilang karagdagan, ang mga pag-andar ng C ++ ay nagbibigay-daan sa iyo upang hatiin ang iyong code sa mga bloke ng code na malinaw, madaling maunawaan, at madaling subukan at baguhin.
Kakayahang upang makita ang mga error bago pagpatay
Ang C ++ ay may isang static na uri, na nangangahulugang ang tagagawa ay walang ginagawang pagpapalagay tungkol sa isinusulat ng programista. Ang benepisyo ay ang tagatala ay maaaring mahuli ang mga pagkakamali at pagkabigo bago ang pagpapatupad, na makatipid ng oras sa katagalan.
Mga Kakulangan
Paggamit ng mga payo
Ang mga payo ay medyo mahirap na konsepto upang maunawaan at kumonsumo din ng maraming memorya. Ang maling paggamit ay maaaring maging sanhi ng sistema upang mag-hang o kumilos nang abnormally.
Ang isang pangunahing problema ay kapag ang data ay nagtuturo ng pareho mula sa dalawang magkakaibang mga panimulang punto, na nagdudulot ng isang makabuluhang problema, na bumubuo ng nakalilito na mga problema sa loob ng pag-encode.
Mga isyu sa seguridad
Bagaman ang object-oriented na programa ay nagbibigay ng maraming seguridad sa data na hawakan, mayroon pa ring ilang mga problema sa seguridad dahil sa pagkakaroon ng mga function ng kaibigan, pandaigdigang variable at mga payo.
Walang maniningil ng basura
Binibigyan ng C ++ ang gumagamit ng kumpletong kontrol sa pamamahala ng memorya ng computer. Kulang ito ng pag-andar ng isang maniningil ng basura upang awtomatikong i-filter ang hindi kinakailangang data at sa gayon ay hindi suportado ang paglalaan ng memorya ng memorya.
Pagkawala ng isang thread
Hindi suportado ng C ++ ang mga built-in na mga thread. Ang konsepto ng thread ay medyo bago sa C ++, dahil hindi ito orihinal na umiiral. Ngayon ay maaaring suportahan ng C ++ ang mga function ng lambda.
Mga programang pinagsama-sama
Bilang isang pinagsama-samang wika, ang mga maipapatupad na file na ginawa ng compiler mula sa source code ay hindi portable at tatakbo lamang sa target na platform (hardware plus operating system) kung saan sila ay naipon, o isang suportadong binary platform.
Maaaring maging kumplikado
Ang C ++ ay maaaring maging kumplikado, dahil pinapayagan nito ang mga klase, na kung saan ay mga pag-andar na may parehong pangalan. Samakatuwid, dapat gamitin ang isang sistema ng paghawak ng simbolo. Bukod dito, kumplikado ito para sa isang napakalaking programa ng mataas na antas. Karaniwang ginagamit ang C ++ para sa mga application na tukoy sa platform.
Mga Sanggunian
- Simplilearn (2020). C ++ Programming para sa mga nagsisimula: Kasaysayan, Mga Pakinabang at Aplikasyon. Kinuha mula sa: simpleilearn.com.
- Educba (2020). Gumagamit ng C ++ sa Real World. Kinuha mula sa: educba.com.
- Dmitrii Rassokhin (2020). Ang C ++ programming language sa cheminformatics at computational chemistry. Journal ng Cheminformatics. Kinuha mula sa: jcheminf.biomedcentral.com.
- Edureka! (2020). Ano ang nangungunang 10 mga tampok ng C ++? Kinuha mula sa: edureka.co.
- Aman Goel (2020). C ++ Wika: Mga Tampok, Gamit, Aplikasyon at Kalamangan Hack. Kinuha mula sa: hackr.io.
- Steemit (2020). C ++: Alamin sa code. Kasaysayan, kalamangan, kawalan ng wika ng C ++. Kinuha mula sa: steemit.com.
- Data Flair (2019). Alamin ang Mga Uri ng Data sa C at C ++ na may Halimbawa sa 4 na minuto lamang. Kinuha mula sa: data-flair.training.