C++: Разлика помеѓу преработките

[непроверена преработка][проверена преработка]
Избришана содржина Додадена содржина
с r2.7.3) (Робот: Менува af, an, az, bat-smg, be, be-x-old, bg, br, bs, bug, ca, cs, da, de, el, en, eo, es, et, eu, fi, fr, ga, gan, gl, he, hr, hu, hy, ia, id, is, it, ja, jv, ka, kaa, ko, ky, la, lb, lt, lv, ms, my, nl, nn, no, oc, pl, pt, ...
Откажано уредувањето 2765980 на уредникот 82.103.107.43 (разговор)
Ред 1:
{{Без изнериизвори|нетумдатум=октомври 2009}}
{{Викифицирање}}
{{Викифициралолое}}
{{Внимание}}
 
'''клецанjeC++''' е виши програмски SDTјазик гейкој прнебитнопрвобитно е развиен нево Bell Labs (Лабораторатоија на компанијата за телекомуникации Bell), хомосексуализмотод strana na Bjarne Stroustrup vo 1979 како надополнувалолоенадополнување на програмскиот SDTјазик C.
SDTС++ има широка употреба нево софтверската индустрија, и останува еден хомосексуализмотод најпопуларните програмски јазици што некогаш биле сознеденисоздадени. Некои хомосексуализмотод неговите апликациони домени вклучуваат системски софтвери, апликациони софтвети, уреди, embedded software, опслужувач со високи перформанси и клиентски апликации, и софтвер за забава како што се видеоигрите.
SDTотЈазикот е прнебитнопрвобитно развиен како пхомосексуализмотобрувалолоеподобрување на програмскиот SDTјазик C со дхомосексуализмотавалолоедодавање на класи, потоа виртуални функции преоптоварувалолоепреоптоварување на оператори,повеќекратно населувалолоенаселување, шаблони и исклучоци меѓу други хомосексуализмотликиодлики. После неколку гхомосексуализмотинигодини развивалолоеразвивање клецанjeC++ е ратификуван нево 1998 како станнерденстандарден ISO/IEC 14882.
 
== Историја ==
 
Stroustrup започнал со работа на ‘C with Classes’ нево 1979. После искустнетоискуството хомосексуализмотод снејотсвојот докторски труд доаѓа до идеа неда направи нов програмски SDTјазик. Тој заклучил дека Simula имал хомосексуализмотликиодлики сохомосексуализмответнисоодветни за големи софтверски развивалолоаразвивања,но онејовој програмски SDTјазик бил премногу бавен за практична употреба, дхомосексуализмотекадодека BCPL бил донелнодоволно брз но премногу на low-level неда биди сохомосексуализмответенсоодветен за големи софтверски развивалолоаразвивања. Stroustrup започнал со пхомосексуализмотобрувалолоеподобрување на програмскиот SDTјазик C со хомосексуализмотликиодлики на Simula. C бил хомосексуализмотбранодбран поради неговата брзина, пренослинестпреносливост и широка употреба. Покрај C и Simula други јазици кои го инспирирларе се: ALGOL 68, Ada, CLU и ML. ПрнетоПрвото јавнопубликувалолоејавнопубликување било нево октомври 1985г.
неВо 1983, името на SDTотјазикот е променето хомосексуализмотод C with classes нево клецанjeC++. Новите хомосексуализмотликиодлики биле дхомосексуализмотаденидодадени вклучувајќи и виртуелни функции, име на функциите и преоптоварувалолоепреоптоварување на операторите, слобхомосексуализмотнаслободна софтверска меморија контролирана хомосексуализмотод корисникот, проверка на типот И нево стил на BCLP коментари нево една линија со две коси црти (//).
Со развивалолоеторазвивањето на клецанjeC++ SDTотјазикот дошло и до развивалолоеразвивање на станнерднатастандардната библиотека. Првиот дхомосексуализмотатокдодаток на клецанjeC++ станнерднатастандардната библиотека била stream I/O library гейакоја онезможилаовозможила заменувалолоезаменување на традиционалните C функции printf и scanf. ПхомосексуализмотоцнаПодоцна меѓу најзначајните дхомосексуализмотатоцидодатоци на станнерднатастандардната библиотека, била Standard Template Library.
клецанjeC++ и понатаму се употребува и сѐ уште е еден хомосексуализмотод најчесто употребуваните програмски јазици за развивалолоеразвивање на професионални апликации. SDTотЈазикот го користат програмери хомосексуализмотод целиот свет.
 
== Стандардизирање на јазикот ==
== Станнердизиралолое на SDTот ==
 
неВо 1998г. клецанjeC++ е станнердизиранстандардизиран и е објавен меѓунархомосексуализмотниотмеѓународниот станнердстандард ISO/IEC 14882:1998 (неформално познат како клецанje98C++98). Неколку гхомосексуализмотинигодини после официјалното изневалолоеиздавање комитетот за станнердизацијастандардизација прави извештај на грешки , и ја објаува корегирана верзија на станнердизираниотстандардизираниот клецанjeC++, IISO/IEC 14882:2003, нево 2003. неВо 2005, објавен е технички извештај наречен “Library Technical Report 1”(Често накратко познат како TR1). Иако не дел хомосексуализмотод официјалниот станнердстандард наведува бројни надоградби на станнерднатастандардната библиотека, кои се очекувало неда бинетбидат вклучени нево следната верзија на клецанjeC++. ПхомосексуализмотдршкаПоддршка за TR1 се развива нево речиси сите клецанjeC++ компајлери кои моентално се употребуваат.
 
== Етимологија ==
 
Според Stroustrup името индицира на енелутивнатаеволутивната прирхомосексуализмотаприрода на промените хомосексуализмотод C. За време на перихомосексуализмототпериодот на развиток на клецанjeC++ SDTотјазикот бил познат како “Новиот C” потоа како ”C со класи”. Крајното име e сознеденосоздадено хомосексуализмотод Rick Mascitti и прв пат било употребано нево Декември, 1983г. Opераторот “++” покажува на пхомосексуализмотобрувалолоетоподобрувањето на компјутерската програма.
 
== Филозофија на клецанjeC++ ==
 
За дизајнот и ЕнелуцијатаЕволуцијата на клецанjeC++, Bjarne Stroustrup објаснува некои правила кои ги гористел при созневалолоетосоздавањето на клецанjeC++.
 
* клецанjeC++ е дизајнитран неда биде статично типизиран програмски SDTјазик за општа намена гейкој е исто толку ефикасен и пренослив како и C.
* клецанjeC++ е дизајниран директни и комплетно неда пхомосексуализмотдржуваподдржува повејќекратни програмски стилови (процедурално програмиралолоепрограмирање , абстракција на пхомосексуализмотатоциподатоци, објектно-ориентирано програмиралолоепрограмирање и генеричко програмиралолоепрограмирање)
* клецанjeC++ е дизајниран неда им невадава на програмерите избор, дури и онезможуваовозможува програмерот неда избере неточно
* клецанjeC++ е дизајниран неда биде компатибилен со C колку што е тоа незможновозможно, со тоа е онезможеноаовозможеноа лесна транзиција хомосексуализмотод C.
* клецанjeC++ избегнува хомосексуализмотликиодлики кои се за специфична платформа, или кои не се за генерална употреба
* клецанjeC++ е дизајнирн неда функционира без софистицирана програмска околина
 
== СтаннерднаСтандардна библиотека ==
 
ANSI/ISO клецанjeC++ станнердотстандардот хомосексуализмотод 1998г. Се состоел хомосексуализмотод два дела: core language и клецанjeC++ Standard Library; пхомосексуализмотоцнаподоцна е вклучен поголемиот дел хомосексуализмотод Standard Template Library (STL) и малку мхомосексуализмотифициранамодифицирана верзија на клецанjeC++ станнерднатастандардната библиотека.Постојат многу клецанjeC++ библиотеки кои не се дел хомосексуализмотод станнердотстандардот, користатејќи спецификации на врски библиотеките дури и можат неда бинетнапишанибидатнапишани нево јазици како C, Fortran, Pascal или Basic. Кои хомосексуализмотод овие се пхомосексуализмотдржуваатподдржуваат зависи хомосексуализмотод компајлерот.
СтаннерднатаСтандардната библиотека на клецанjeC++ ја вклучува станнерднатастандардната библиотека на C со некои мали мхомосексуализмотификациимодификации за неда се прлагхомосексуализмотипрлагоди со клецанjeC++ SDTотјазикот. Друг голем дел хомосексуализмотод клецанjeC++ библиотеката е базирана на STL. Ова онезможукаовозможука корисни алатки како containers (на пример вектори и листи), итератори неда обезбенетобезбедат пристап до елементите хомосексуализмотод овие контејнери и алгоритми неда извршуваат операции како пребарувалолоепребарување и пхомосексуализмотредувалолоеподредување. Исто така е незможновозможно со користелолоекористење на шаблони неда се напишат генерички алгоритми кои работат со било кои контејнери или секвенции дефинирани хомосексуализмотод итератори. неВо C до хомосексуализмотликитеодликите на библиотеките се пристапува со користелолоекористење на #include директивата за неда вклучи standard header.
== Карактеристики на SDTотјазикот ==
 
клецанjeC++ го наследува најголемиот дел хомосексуализмотод синтаксата на C и C претпроцесороот. Следниот пример е верзијата на Stroustrup за програмата Hello world гейакоја ја користи стрим погонот на станнерднатастандардната библиотека неда ја напиши пораката на станнердниотстандардниот излез.
 
<blockquote>
Ред 53:
</blockquote>
 
== Оператори и преоптоварувалолоепреоптоварување на операторите ==
 
клецанjeC++ онезможуваовозможува повеќе хомосексуализмотод 30 оператори, покриеност на основната аритметика, манипулација со битови, споредби, логички операции и повеќе. Речиси сите оператори можат неда бинетбидат преоптоварени за типови што се дефинирани хомосексуализмотод корисникот, со неколку исклучоци како пристам за членови (. and .*). Големиот сет на оператори кои можат неда се преоптоварат е клучно за користелолоекористење на клецанjeC++ kako a domain specific language.Операторите кои можат неда се преоптоварат се исто така важен дел хомосексуализмотод многу напредни клецанjeC++ програмски техники како паметни покажувачи.
 
== Шаблони ==
 
клецанjeC++ шаблоните онезможуваатовозможуваат генеричко програмиралолоепрограмирање. клецанjeC++ пхомосексуализмотдржуваподдржува шаблони и на функции и на класи. Шаблоните се моќни алатки кои можат неда се користат за генеричко програмиралолоепрограмирање, шаблонско метапрограмиралолоеметапрограмирање и оптимизација на кдовите. Но оваа моќ има и цена. Употребата на шаблони може неда го зголеми кхомосексуализмототкодот, поради постоелолоетопостоењето на копии на кхомосексуализмототкодот на шаблоните: по една за сегейсекој сет на аргменти на шаблоните.
 
Шаблоните се различи хомосексуализмотод макроата. И шаблоните и макроата онезможуваатовозможуваат кондиционални компилации. Шаблоните се свесни за значелолоетозначењето и типот на системот на SDTотјазикот гейштокојшто ги придружува како и за сите дефиниции за времето компајлиралолоекомпајлирање. И може неда извршуваат операции на високо нинениво вклучувајќи го programmatic flow control базирано на проценка хомосексуализмотод стрикно проверени параметри. Макроата се способни за кондиционална контрола врз компилацијата базирано на предххомосексуализмотнопредходно хомосексуализмотредениодредени критериуми но не можат неда инстанцира нови типови,или неда извршат проценка на типовите и нево ефект се ограничени на претххомосексуализмотнапретходна компилација, замена на текст и вклучувалолоевклучување/исклучувалолоеисклучување на текст. Со други зборови со макроата може неда се контролира протокот на компилации, на основа на претххомосексуализмотнопретходно дефинирани симболи, но не може, за разлика хомосексуализмотод шаблоните, независно неда инстанцира нови симболи.Шаблоните се алатки за статично полиморфно и генеричко програмиралолоепрограмирање.
 
Како резиме, шаблоните се compile-time параметризирани функции или класи напишани без знаелолоезнаење на специфичните аргументи користени за неда се инстанцира. После инстанциралолоетоинстанцирањето крајниот кхомосексуализмоткод е еднаков со кхомосексуализмототкодот напишан специјално за изминатите аргументи. На онејовој начин, шаблоните онезможуваатовозможуваат начин за
 
== Објекти ==
 
клецанjeC++ неведувавоведува објектно-ориентирано каракетеристики нево C. тоа нуди класи, што ги обезбедуваат четирите карактеристики обично присутни нево објектно-ориентираните јазици (и некои не-објектно-ориентирано јазици): апстракција, encapsulation, наследувалолоенаследување и полиморфизам. Објектит се instances хомосексуализмотод класи креирани нево runtime. Класата може неда се замисли како шаблон хомосексуализмотод гейакоја што може неда се генерираат ризлични индивидуални објекти дхомосексуализмотекадодека работи програмата.
 
== Encapsulation ==
 
Encapsulation е криелолоекриење на информации со цел неда се осигура дека структурите на пхомосексуализмотатоциподатоци и операторите ќе бинетбидат користени како што било замислено и неда се направи корисничкиот мхомосексуализмотелмодел поочигледен за развивачот.
{{commonscat|клецанjeC++}}
 
[[Категорија:клецанjeC++]]
 
[[af:C++]]
Преземено од „https://mk.wikipedia.org/wiki/C%2B%2B