CINXE.COM
C++ — Вікіпедія
<!DOCTYPE html> <html class="client-nojs vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-feature-night-mode-disabled skin-theme-clientpref-day vector-sticky-header-enabled vector-toc-available" lang="rue" dir="ltr"> <head> <meta charset="UTF-8"> <title>C++ — Вікіпедія</title> <script>(function(){var className="client-js vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-feature-night-mode-disabled skin-theme-clientpref-day vector-sticky-header-enabled vector-toc-available";var cookie=document.cookie.match(/(?:^|; )ruewikimwclientpreferences=([^;]+)/);if(cookie){cookie[1].split('%2C').forEach(function(pref){className=className.replace(new RegExp('(^| )'+pref.replace(/-clientpref-\w+$|[^\w-]+/g,'')+'-clientpref-\\w+( |$)'),'$1'+pref+'$2');});}document.documentElement.className=className;}());RLCONF={"wgBreakFrames":false,"wgSeparatorTransformTable":[",\t."," \t,"],"wgDigitTransformTable":["",""],"wgDefaultDateFormat": "dmy","wgMonthNames":["","януар","фебруар","марец","апріль","май","юній","юлій","авґуст","септембер","октобер","новембер","децембер"],"wgRequestId":"f09389ee-130c-482d-8993-96081471a2a6","wgCanonicalNamespace":"","wgCanonicalSpecialPageName":false,"wgNamespaceNumber":0,"wgPageName":"C++","wgTitle":"C++","wgCurRevisionId":154497,"wgRevisionId":154497,"wgArticleId":22777,"wgIsArticle":true,"wgIsRedirect":false,"wgAction":"view","wgUserName":null,"wgUserGroups":["*"],"wgCategories":["Модуль:Не перекладено:До перекладу","Статї обсягуючі анґліцькый языковый текст","Сторінки, які використовують застарілі теги «source»","Сторінки з помилками посилань","Pogreške u bilješkama - nema odredišta","С++","Языкы проґрамованя", "Статя написана мараморошськым ґваром","Цы самаравучі языкы проґрамованя","Высокорунёві языкы проґрамованя","Языкы проґрамованя із особным кроманёванём тямов"],"wgPageViewLanguage":"rue","wgPageContentLanguage":"rue","wgPageContentModel":"wikitext","wgRelevantPageName":"C++","wgRelevantArticleId":22777,"wgIsProbablyEditable":true,"wgRelevantPageIsProbablyEditable":true,"wgRestrictionEdit":[],"wgRestrictionMove":[],"wgNoticeProject":"wikipedia","wgCiteReferencePreviewsActive":true,"wgMediaViewerOnClick":true,"wgMediaViewerEnabledByDefault":true,"wgPopupsFlags":0,"wgVisualEditor":{"pageLanguageCode":"rue","pageLanguageDir":"ltr","pageVariantFallbacks":"rue"},"wgMFDisplayWikibaseDescriptions":{"search":true,"watchlist":true,"tagline":true,"nearby":true},"wgWMESchemaEditAttemptStepOversample":false,"wgWMEPageLength":200000,"wgEditSubmitButtonLabelPublish": true,"wgULSPosition":"interlanguage","wgULSisCompactLinksEnabled":false,"wgVector2022LanguageInHeader":true,"wgULSisLanguageSelectorEmpty":false,"wgWikibaseItemId":"Q2407","wgCheckUserClientHintsHeadersJsApi":["brands","architecture","bitness","fullVersionList","mobile","model","platform","platformVersion"],"GEHomepageSuggestedEditsEnableTopics":true,"wgGETopicsMatchModeEnabled":false,"wgGEStructuredTaskRejectionReasonTextInputEnabled":false,"wgGELevelingUpEnabledForUser":false};RLSTATE={"ext.globalCssJs.user.styles":"ready","site.styles":"ready","user.styles":"ready","ext.globalCssJs.user":"ready","user":"ready","user.options":"loading","ext.cite.styles":"ready","ext.pygments":"ready","skins.vector.search.codex.styles":"ready","skins.vector.styles":"ready","skins.vector.icons":"ready","ext.wikimediamessages.styles":"ready","ext.visualEditor.desktopArticleTarget.noscript":"ready","ext.uls.interlanguage":"ready","wikibase.client.init":"ready"};RLPAGEMODULES=["ext.cite.ux-enhancements", "ext.pygments.view","mediawiki.page.media","ext.scribunto.logs","site","mediawiki.page.ready","mediawiki.toc","skins.vector.js","ext.centralNotice.geoIP","ext.centralNotice.startUp","ext.urlShortener.toolbar","ext.centralauth.centralautologin","mmv.bootstrap","ext.popups","ext.visualEditor.desktopArticleTarget.init","ext.visualEditor.targetLoader","ext.echo.centralauth","ext.eventLogging","ext.wikimediaEvents","ext.navigationTiming","ext.uls.interface","ext.cx.eventlogging.campaigns","ext.cx.uls.quick.actions","wikibase.client.vector-2022","ext.checkUser.clientHints","ext.growthExperiments.SuggestedEditSession"];</script> <script>(RLQ=window.RLQ||[]).push(function(){mw.loader.impl(function(){return["user.options@12s5i",function($,jQuery,require,module){mw.user.tokens.set({"patrolToken":"+\\","watchToken":"+\\","csrfToken":"+\\"}); }];});});</script> <link rel="stylesheet" href="/w/load.php?lang=rue&modules=ext.cite.styles%7Cext.pygments%7Cext.uls.interlanguage%7Cext.visualEditor.desktopArticleTarget.noscript%7Cext.wikimediamessages.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles%7Cwikibase.client.init&only=styles&skin=vector-2022"> <script async="" src="/w/load.php?lang=rue&modules=startup&only=scripts&raw=1&skin=vector-2022"></script> <meta name="ResourceLoaderDynamicStyles" content=""> <link rel="stylesheet" href="/w/load.php?lang=rue&modules=site.styles&only=styles&skin=vector-2022"> <meta name="generator" content="MediaWiki 1.44.0-wmf.18"> <meta name="referrer" content="origin"> <meta name="referrer" content="origin-when-cross-origin"> <meta name="robots" content="max-image-preview:standard"> <meta name="format-detection" content="telephone=no"> <meta property="og:image" content="https://upload.wikimedia.org/wikipedia/commons/thumb/1/18/ISO_C%2B%2B_Logo.svg/1200px-ISO_C%2B%2B_Logo.svg.png"> <meta property="og:image:width" content="1200"> <meta property="og:image:height" content="1349"> <meta property="og:image" content="https://upload.wikimedia.org/wikipedia/commons/thumb/1/18/ISO_C%2B%2B_Logo.svg/800px-ISO_C%2B%2B_Logo.svg.png"> <meta property="og:image:width" content="800"> <meta property="og:image:height" content="899"> <meta property="og:image" content="https://upload.wikimedia.org/wikipedia/commons/thumb/1/18/ISO_C%2B%2B_Logo.svg/640px-ISO_C%2B%2B_Logo.svg.png"> <meta property="og:image:width" content="640"> <meta property="og:image:height" content="719"> <meta name="viewport" content="width=1120"> <meta property="og:title" content="C++ — Вікіпедія"> <meta property="og:type" content="website"> <link rel="preconnect" href="//upload.wikimedia.org"> <link rel="alternate" media="only screen and (max-width: 640px)" href="//rue.m.wikipedia.org/wiki/C%2B%2B"> <link rel="alternate" type="application/x-wiki" title="Едітовати" href="/w/index.php?title=C%2B%2B&action=edit"> <link rel="apple-touch-icon" href="/static/apple-touch/wikipedia.png"> <link rel="icon" href="/static/favicon/wikipedia.ico"> <link rel="search" type="application/opensearchdescription+xml" href="/w/rest.php/v1/search" title="Вікіпедія (rue)"> <link rel="EditURI" type="application/rsd+xml" href="//rue.wikipedia.org/w/api.php?action=rsd"> <link rel="canonical" href="https://rue.wikipedia.org/wiki/C%2B%2B"> <link rel="license" href="https://creativecommons.org/licenses/by-sa/4.0/deed.rue"> <link rel="alternate" type="application/atom+xml" title="Вікіпедія Atom канал" href="/w/index.php?title=%D0%A8%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D0%BD%D0%B0:%D0%9F%D0%BE%D1%81%D0%BB%D1%97%D0%B4%D0%BD%D1%97_%D0%B7%D0%BC%D1%96%D0%BD%D1%8B&feed=atom"> <link rel="dns-prefetch" href="//meta.wikimedia.org" /> <link rel="dns-prefetch" href="login.wikimedia.org"> </head> <body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject mw-editable page-C rootpage-C skin-vector-2022 action-view"><a class="mw-jump-link" href="#bodyContent">Перейти до вмісту</a> <div class="vector-header-container"> <header class="vector-header mw-header"> <div class="vector-header-start"> <nav class="vector-main-menu-landmark" aria-label="Сайт"> <div id="vector-main-menu-dropdown" class="vector-dropdown vector-main-menu-dropdown vector-button-flush-left vector-button-flush-right" title="Головне меню" > <input type="checkbox" id="vector-main-menu-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-main-menu-dropdown" class="vector-dropdown-checkbox " aria-label="Головноє меню" > <label id="vector-main-menu-dropdown-label" for="vector-main-menu-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-menu mw-ui-icon-wikimedia-menu"></span> <span class="vector-dropdown-label-text">Головноє меню</span> </label> <div class="vector-dropdown-content"> <div id="vector-main-menu-unpinned-container" class="vector-unpinned-container"> <div id="vector-main-menu" class="vector-main-menu vector-pinnable-element"> <div class="vector-pinnable-header vector-main-menu-pinnable-header vector-pinnable-header-unpinned" data-feature-name="main-menu-pinned" data-pinnable-element-id="vector-main-menu" data-pinned-container-id="vector-main-menu-pinned-container" data-unpinned-container-id="vector-main-menu-unpinned-container" > <div class="vector-pinnable-header-label">Головноє меню</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-main-menu.pin">перемістити на бічну панель</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-main-menu.unpin">сховати</button> </div> <div id="p-navigation" class="vector-menu mw-portlet mw-portlet-navigation" > <div class="vector-menu-heading"> Навіґація </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="n-mainpage-description" class="mw-list-item"><a href="/wiki/%D0%93%D0%BE%D0%BB%D0%BE%D0%B2%D0%BD%D0%B0_%D1%81%D1%82%D0%BE%D1%80%D1%96%D0%BD%D0%BA%D0%B0" title="Перейти на головну сторінку [z]" accesskey="z"><span>Головна сторінка</span></a></li><li id="n-portal" class="mw-list-item"><a href="/wiki/%D0%92%D1%96%D0%BA%D1%96%D0%BF%D0%B5%D0%B4%D1%96%D1%8F:%D0%9F%D0%BE%D1%80%D1%82%D0%B0%D0%BB_%D0%BA%D0%BE%D0%BC%D1%83%D0%BD%D1%96%D1%82%D1%8B" title="О проєктї, што можете зробити, де ся што находить"><span>Портал комуніты</span></a></li><li id="n-recentchanges" class="mw-list-item"><a href="/wiki/%D0%A8%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D0%BD%D0%B0:%D0%9F%D0%BE%D1%81%D0%BB%D1%97%D0%B4%D0%BD%D1%97_%D0%B7%D0%BC%D1%96%D0%BD%D1%8B" title="Список послїднїх змін [r]" accesskey="r"><span>Послїднї зміны</span></a></li><li id="n-randompage" class="mw-list-item"><a href="/wiki/%D0%A8%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D0%BD%D0%B0:%D0%9D%D0%B0%D0%B3%D0%BE%D0%B4%D0%BD%D0%B0_%D1%81%D1%82%D0%B0%D1%82%D1%8F" title="Іти на трафункову сторінку [x]" accesskey="x"><span>Трафункова статя</span></a></li><li id="n-help" class="mw-list-item"><a href="/wiki/%D0%92%D1%96%D0%BA%D1%96%D0%BF%D0%B5%D0%B4%D1%96%D1%8F:%D0%9F%D0%BE%D0%BC%D1%96%D1%87" title="Посмотрити поміч"><span>Поміч</span></a></li><li id="n-specialpages" class="mw-list-item"><a href="/wiki/%D0%A8%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D0%BD%D0%B0:%D0%A8%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D0%BD%D1%8B_%D1%81%D1%82%D0%BE%D1%80%D1%96%D0%BD%D0%BA%D1%8B"><span>Шпеціалны сторінкы</span></a></li> </ul> </div> </div> </div> </div> </div> </div> </nav> <a href="/wiki/%D0%93%D0%BE%D0%BB%D0%BE%D0%B2%D0%BD%D0%B0_%D1%81%D1%82%D0%BE%D1%80%D1%96%D0%BD%D0%BA%D0%B0" class="mw-logo"> <img class="mw-logo-icon" src="/static/images/icons/wikipedia.png" alt="" aria-hidden="true" height="50" width="50"> <span class="mw-logo-container skin-invert"> <img class="mw-logo-wordmark" alt="Вікіпедія" src="/static/images/mobile/copyright/wikipedia-wordmark-rue.svg" style="width: 7.5em; height: 1.375em;"> <img class="mw-logo-tagline" alt="" src="/static/images/mobile/copyright/wikipedia-tagline-rue.svg" width="120" height="12" style="width: 7.5em; height: 0.75em;"> </span> </a> </div> <div class="vector-header-end"> <div id="p-search" role="search" class="vector-search-box-vue vector-search-box-collapses vector-search-box-show-thumbnail vector-search-box-auto-expand-width vector-search-box"> <a href="/wiki/%D0%A8%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D0%BD%D0%B0:%D0%93%D0%BB%D1%8F%D0%B4%D0%B0%D0%BD%D1%8F" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only search-toggle" title="Глядати на вікі [f]" accesskey="f"><span class="vector-icon mw-ui-icon-search mw-ui-icon-wikimedia-search"></span> <span>Глядати</span> </a> <div class="vector-typeahead-search-container"> <div class="cdx-typeahead-search cdx-typeahead-search--show-thumbnail cdx-typeahead-search--auto-expand-width"> <form action="/w/index.php" id="searchform" class="cdx-search-input cdx-search-input--has-end-button"> <div id="simpleSearch" class="cdx-search-input__input-wrapper" data-search-loc="header-moved"> <div class="cdx-text-input cdx-text-input--has-start-icon"> <input class="cdx-text-input__input" type="search" name="search" placeholder="Глядати Вікіпедія" aria-label="Глядати Вікіпедія" autocapitalize="sentences" title="Глядати на вікі [f]" accesskey="f" id="searchInput" > <span class="cdx-text-input__icon cdx-text-input__start-icon"></span> </div> <input type="hidden" name="title" value="Шпеціална:Гляданя"> </div> <button class="cdx-button cdx-search-input__end-button">Найти</button> </form> </div> </div> </div> <nav class="vector-user-links vector-user-links-wide" aria-label="Особны інштрументы"> <div class="vector-user-links-main"> <div id="p-vector-user-menu-preferences" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <div id="p-vector-user-menu-userpage" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <nav class="vector-appearance-landmark" aria-label="Вызир"> <div id="vector-appearance-dropdown" class="vector-dropdown " title="Змінити зовнішній вигляд розміру, ширини та кольору сторінки" > <input type="checkbox" id="vector-appearance-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-appearance-dropdown" class="vector-dropdown-checkbox " aria-label="Вызир" > <label id="vector-appearance-dropdown-label" for="vector-appearance-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-appearance mw-ui-icon-wikimedia-appearance"></span> <span class="vector-dropdown-label-text">Вызир</span> </label> <div class="vector-dropdown-content"> <div id="vector-appearance-unpinned-container" class="vector-unpinned-container"> </div> </div> </div> </nav> <div id="p-vector-user-menu-notifications" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <div id="p-vector-user-menu-overflow" class="vector-menu mw-portlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-sitesupport-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="https://donate.wikimedia.org/?wmf_source=donate&wmf_medium=sidebar&wmf_campaign=rue.wikipedia.org&uselang=rue" class=""><span>Підпорьте нас</span></a> </li> <li id="pt-createaccount-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="/w/index.php?title=%D0%A8%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D0%BD%D0%B0:%D0%A1%D1%82%D0%B2%D0%BE%D1%80%D0%B8%D1%82%D0%B8_%D0%BA%D0%BE%D0%BD%D1%82%D0%BE&returnto=C%2B%2B" title="Пропонуємо створити обліковий запис і увійти в систему; однак, це не обов'язково" class=""><span>Створити конто</span></a> </li> <li id="pt-login-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="/w/index.php?title=%D0%A8%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D0%BD%D0%B0:%D0%92%D1%85%D1%96%D0%B4&returnto=C%2B%2B" title="Рекомендуєме ся приголосити, але не є то повинне. [o]" accesskey="o" class=""><span>Приголошіня</span></a> </li> </ul> </div> </div> </div> <div id="vector-user-links-dropdown" class="vector-dropdown vector-user-menu vector-button-flush-right vector-user-menu-logged-out" title="Більше опцій" > <input type="checkbox" id="vector-user-links-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-user-links-dropdown" class="vector-dropdown-checkbox " aria-label="Особны інштрументы" > <label id="vector-user-links-dropdown-label" for="vector-user-links-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-ellipsis mw-ui-icon-wikimedia-ellipsis"></span> <span class="vector-dropdown-label-text">Особны інштрументы</span> </label> <div class="vector-dropdown-content"> <div id="p-personal" class="vector-menu mw-portlet mw-portlet-personal" title="Меню хоснователя" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-sitesupport" class="user-links-collapsible-item mw-list-item"><a href="https://donate.wikimedia.org/?wmf_source=donate&wmf_medium=sidebar&wmf_campaign=rue.wikipedia.org&uselang=rue"><span>Підпорьте нас</span></a></li><li id="pt-contribute" class="mw-list-item"><a href="/wiki/%D0%A8%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D0%BD%D0%B0:Contribute"><span class="vector-icon mw-ui-icon-edit mw-ui-icon-wikimedia-edit"></span> <span>Зробити внесок</span></a></li><li id="pt-createaccount" class="user-links-collapsible-item mw-list-item"><a href="/w/index.php?title=%D0%A8%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D0%BD%D0%B0:%D0%A1%D1%82%D0%B2%D0%BE%D1%80%D0%B8%D1%82%D0%B8_%D0%BA%D0%BE%D0%BD%D1%82%D0%BE&returnto=C%2B%2B" title="Пропонуємо створити обліковий запис і увійти в систему; однак, це не обов'язково"><span class="vector-icon mw-ui-icon-userAdd mw-ui-icon-wikimedia-userAdd"></span> <span>Створити конто</span></a></li><li id="pt-login" class="user-links-collapsible-item mw-list-item"><a href="/w/index.php?title=%D0%A8%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D0%BD%D0%B0:%D0%92%D1%85%D1%96%D0%B4&returnto=C%2B%2B" title="Рекомендуєме ся приголосити, але не є то повинне. [o]" accesskey="o"><span class="vector-icon mw-ui-icon-logIn mw-ui-icon-wikimedia-logIn"></span> <span>Приголошіня</span></a></li> </ul> </div> </div> <div id="p-user-menu-anon-editor" class="vector-menu mw-portlet mw-portlet-user-menu-anon-editor" > <div class="vector-menu-heading"> Сторінки для редакторів, які не ввійшли в систему <a href="/wiki/%D0%9F%D0%BE%D0%BC%D1%96%D1%87:%D0%92%D1%81%D1%82%D1%83%D0%BF" aria-label="Дізнатися більше про редагування"><span>дізнатися більше</span></a> </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-anontalk" class="mw-list-item"><a href="/wiki/%D0%A8%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D0%BD%D0%B0:%D0%9C%D0%BE%D1%8F_%D0%B4%D1%96%D1%81%D0%BA%D1%83%D0%B7%D1%96%D1%8F" title="Діскусія о едітованях выконаных з той IP-адресы [n]" accesskey="n"><span>Діскусія</span></a></li> </ul> </div> </div> </div> </div> </nav> </div> </header> </div> <div class="mw-page-container"> <div class="mw-page-container-inner"> <div class="vector-sitenotice-container"> <div id="siteNotice"><!-- CentralNotice --></div> </div> <div class="vector-column-start"> <div class="vector-main-menu-container"> <div id="mw-navigation"> <nav id="mw-panel" class="vector-main-menu-landmark" aria-label="Сайт"> <div id="vector-main-menu-pinned-container" class="vector-pinned-container"> </div> </nav> </div> </div> <div class="vector-sticky-pinned-container"> <nav id="mw-panel-toc" aria-label="Зміст" data-event-name="ui.sidebar-toc" class="mw-table-of-contents-container vector-toc-landmark"> <div id="vector-toc-pinned-container" class="vector-pinned-container"> <div id="vector-toc" class="vector-toc vector-pinnable-element"> <div class="vector-pinnable-header vector-toc-pinnable-header vector-pinnable-header-pinned" data-feature-name="toc-pinned" data-pinnable-element-id="vector-toc" > <h2 class="vector-pinnable-header-label">Зміст</h2> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-toc.pin">перемістити на бічну панель</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-toc.unpin">сховати</button> </div> <ul class="vector-toc-contents" id="mw-panel-toc-list"> <li id="toc-mw-content-text" class="vector-toc-list-item vector-toc-level-1"> <a href="#" class="vector-toc-link"> <div class="vector-toc-text">Вступ</div> </a> </li> <li id="toc-Історія" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Історія"> <div class="vector-toc-text"> <span class="vector-toc-numb">1</span> <span>Історія</span> </div> </a> <button aria-controls="toc-Історія-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Перемкнути підрозділ Історія</span> </button> <ul id="toc-Історія-sublist" class="vector-toc-list"> <li id="toc-Зотворіня" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Зотворіня"> <div class="vector-toc-text"> <span class="vector-toc-numb">1.1</span> <span>Зотворіня</span> </div> </a> <ul id="toc-Зотворіня-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Розвуй_і_штандартізація_языка" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Розвуй_і_штандартізація_языка"> <div class="vector-toc-text"> <span class="vector-toc-numb">1.2</span> <span>Розвуй і штандартізація языка</span> </div> </a> <ul id="toc-Розвуй_і_штандартізація_языка-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Історія_імня" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Історія_імня"> <div class="vector-toc-text"> <span class="vector-toc-numb">1.3</span> <span>Історія імня</span> </div> </a> <ul id="toc-Історія_імня-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Філозофія_C++" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Філозофія_C++"> <div class="vector-toc-text"> <span class="vector-toc-numb">1.4</span> <span>Філозофія C++</span> </div> </a> <ul id="toc-Філозофія_C++-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Убозріня_языка" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Убозріня_языка"> <div class="vector-toc-text"> <span class="vector-toc-numb">2</span> <span>Убозріня языка</span> </div> </a> <button aria-controls="toc-Убозріня_языка-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Перемкнути підрозділ Убозріня языка</span> </button> <ul id="toc-Убозріня_языка-sublist" class="vector-toc-list"> <li id="toc-Тіпы" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Тіпы"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.1</span> <span>Тіпы</span> </div> </a> <ul id="toc-Тіпы-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Наслідованя" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Наслідованя"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.2</span> <span>Наслідованя</span> </div> </a> <ul id="toc-Наслідованя-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Поліморфізм" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Поліморфізм"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.3</span> <span>Поліморфізм</span> </div> </a> <ul id="toc-Поліморфізм-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Інкапсулація" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Інкапсулація"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.4</span> <span>Інкапсулація</span> </div> </a> <ul id="toc-Інкапсулація-sublist" class="vector-toc-list"> <li id="toc-Цімборы" class="vector-toc-list-item vector-toc-level-3"> <a class="vector-toc-link" href="#Цімборы"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.4.1</span> <span>Цімборы</span> </div> </a> <ul id="toc-Цімборы-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Спеціалні_функції" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Спеціалні_функції"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.5</span> <span>Спеціалні функції</span> </div> </a> <ul id="toc-Спеціалні_функції-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Нові_можности" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Нові_можности"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.6</span> <span>Нові можности</span> </div> </a> <ul id="toc-Нові_можности-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Штандартна_бібліотека" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Штандартна_бібліотека"> <div class="vector-toc-text"> <span class="vector-toc-numb">3</span> <span>Штандартна бібліотека</span> </div> </a> <button aria-controls="toc-Штандартна_бібліотека-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Перемкнути підрозділ Штандартна бібліотека</span> </button> <ul id="toc-Штандартна_бібліотека-sublist" class="vector-toc-list"> <li id="toc-Сполочна_штруктура" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Сполочна_штруктура"> <div class="vector-toc-text"> <span class="vector-toc-numb">3.1</span> <span>Сполочна штруктура</span> </div> </a> <ul id="toc-Сполочна_штруктура-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Пудпора_языка" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Пудпора_языка"> <div class="vector-toc-text"> <span class="vector-toc-numb">3.2</span> <span>Пудпора языка</span> </div> </a> <ul id="toc-Пудпора_языка-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Стандартні_контейнеры" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Стандартні_контейнеры"> <div class="vector-toc-text"> <span class="vector-toc-numb">3.3</span> <span>Стандартні контейнеры</span> </div> </a> <ul id="toc-Стандартні_контейнеры-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Основні_утиліты" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Основні_утиліты"> <div class="vector-toc-text"> <span class="vector-toc-numb">3.4</span> <span>Основні утиліты</span> </div> </a> <ul id="toc-Основні_утиліты-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-STL_–_Standard_Template_Library_(Штандартна_Шаблонова_Бібліотека)" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#STL_–_Standard_Template_Library_(Штандартна_Шаблонова_Бібліотека)"> <div class="vector-toc-text"> <span class="vector-toc-numb">3.5</span> <span>STL – Standard Template Library (Штандартна Шаблонова Бібліотека)</span> </div> </a> <ul id="toc-STL_–_Standard_Template_Library_(Штандартна_Шаблонова_Бібліотека)-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Реалізації" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Реалізації"> <div class="vector-toc-text"> <span class="vector-toc-numb">3.6</span> <span>Реалізації</span> </div> </a> <ul id="toc-Реалізації-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Рузня_із_Цы" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Рузня_із_Цы"> <div class="vector-toc-text"> <span class="vector-toc-numb">4</span> <span>Рузня із Цы</span> </div> </a> <button aria-controls="toc-Рузня_із_Цы-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Перемкнути підрозділ Рузня із Цы</span> </button> <ul id="toc-Рузня_із_Цы-sublist" class="vector-toc-list"> <li id="toc-Сполочность_із_Цы" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Сполочность_із_Цы"> <div class="vector-toc-text"> <span class="vector-toc-numb">4.1</span> <span>Сполочность із Цы</span> </div> </a> <ul id="toc-Сполочность_із_Цы-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Нові_можности_2" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Нові_можности_2"> <div class="vector-toc-text"> <span class="vector-toc-numb">4.2</span> <span>Нові можности</span> </div> </a> <ul id="toc-Нові_можности_2-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-C++_не_включат_у_ся_C" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#C++_не_включат_у_ся_C"> <div class="vector-toc-text"> <span class="vector-toc-numb">4.3</span> <span>C++ не включат у ся C</span> </div> </a> <ul id="toc-C++_не_включат_у_ся_C-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Средства_C,_котрых_рекомендуєся_не_кывати" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Средства_C,_котрых_рекомендуєся_не_кывати"> <div class="vector-toc-text"> <span class="vector-toc-numb">4.4</span> <span>Средства C, котрых рекомендуєся не кывати</span> </div> </a> <ul id="toc-Средства_C,_котрых_рекомендуєся_не_кывати-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Розвуй_дале" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Розвуй_дале"> <div class="vector-toc-text"> <span class="vector-toc-numb">5</span> <span>Розвуй дале</span> </div> </a> <button aria-controls="toc-Розвуй_дале-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Перемкнути підрозділ Розвуй дале</span> </button> <ul id="toc-Розвуй_дале-sublist" class="vector-toc-list"> <li id="toc-Сполочне_напрямліня_розвоя_C++" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Сполочне_напрямліня_розвоя_C++"> <div class="vector-toc-text"> <span class="vector-toc-numb">5.1</span> <span>Сполочне напрямліня розвоя C++</span> </div> </a> <ul id="toc-Сполочне_напрямліня_розвоя_C++-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Штандарт_C++11:_доповніня_у_ядрови_языка" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Штандарт_C++11:_доповніня_у_ядрови_языка"> <div class="vector-toc-text"> <span class="vector-toc-numb">5.2</span> <span>Штандарт C++11: доповніня у ядрови языка</span> </div> </a> <ul id="toc-Штандарт_C++11:_доповніня_у_ядрови_языка-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Приклад_проґрам" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Приклад_проґрам"> <div class="vector-toc-text"> <span class="vector-toc-numb">6</span> <span>Приклад проґрам</span> </div> </a> <button aria-controls="toc-Приклад_проґрам-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Перемкнути підрозділ Приклад проґрам</span> </button> <ul id="toc-Приклад_проґрам-sublist" class="vector-toc-list"> <li id="toc-Приклад_№_1" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Приклад_№_1"> <div class="vector-toc-text"> <span class="vector-toc-numb">6.1</span> <span>Приклад № 1</span> </div> </a> <ul id="toc-Приклад_№_1-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Приклад_№_2" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Приклад_№_2"> <div class="vector-toc-text"> <span class="vector-toc-numb">6.2</span> <span>Приклад № 2</span> </div> </a> <ul id="toc-Приклад_№_2-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Ізрунёваня_із_алтернатівными_языками" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Ізрунёваня_із_алтернатівными_языками"> <div class="vector-toc-text"> <span class="vector-toc-numb">7</span> <span>Ізрунёваня із алтернатівными языками</span> </div> </a> <button aria-controls="toc-Ізрунёваня_із_алтернатівными_языками-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Перемкнути підрозділ Ізрунёваня із алтернатівными языками</span> </button> <ul id="toc-Ізрунёваня_із_алтернатівными_языками-sublist" class="vector-toc-list"> <li id="toc-C++_тай_Ада" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#C++_тай_Ада"> <div class="vector-toc-text"> <span class="vector-toc-numb">7.1</span> <span>C++ тай Ада</span> </div> </a> <ul id="toc-C++_тай_Ада-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-C++_тай_Java" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#C++_тай_Java"> <div class="vector-toc-text"> <span class="vector-toc-numb">7.2</span> <span>C++ тай Java</span> </div> </a> <ul id="toc-C++_тай_Java-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-C++_тай_C" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#C++_тай_C"> <div class="vector-toc-text"> <span class="vector-toc-numb">7.3</span> <span>C++ тай C</span> </div> </a> <ul id="toc-C++_тай_C-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-C++_і_функціоналні_тай_скріптові_языкы" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#C++_і_функціоналні_тай_скріптові_языкы"> <div class="vector-toc-text"> <span class="vector-toc-numb">7.4</span> <span>C++ і функціоналні тай скріптові языкы</span> </div> </a> <ul id="toc-C++_і_функціоналні_тай_скріптові_языкы-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Крітіка" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Крітіка"> <div class="vector-toc-text"> <span class="vector-toc-numb">8</span> <span>Крітіка</span> </div> </a> <button aria-controls="toc-Крітіка-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Перемкнути підрозділ Крітіка</span> </button> <ul id="toc-Крітіка-sublist" class="vector-toc-list"> <li id="toc-За_крітіку_C++_у_цілому" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#За_крітіку_C++_у_цілому"> <div class="vector-toc-text"> <span class="vector-toc-numb">8.1</span> <span>За крітіку C++ у цілому</span> </div> </a> <ul id="toc-За_крітіку_C++_у_цілому-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Крітіка_оремых_елементу_і_концепцій" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Крітіка_оремых_елементу_і_концепцій"> <div class="vector-toc-text"> <span class="vector-toc-numb">8.2</span> <span>Крітіка оремых елементу і концепцій</span> </div> </a> <ul id="toc-Крітіка_оремых_елементу_і_концепцій-sublist" class="vector-toc-list"> <li id="toc-Контрол_за_повожінём" class="vector-toc-list-item vector-toc-level-3"> <a class="vector-toc-link" href="#Контрол_за_повожінём"> <div class="vector-toc-text"> <span class="vector-toc-numb">8.2.1</span> <span>Контрол за повожінём</span> </div> </a> <ul id="toc-Контрол_за_повожінём-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Компонентне_і_обєктово-орьєнтоване_проґрамованя" class="vector-toc-list-item vector-toc-level-3"> <a class="vector-toc-link" href="#Компонентне_і_обєктово-орьєнтоване_проґрамованя"> <div class="vector-toc-text"> <span class="vector-toc-numb">8.2.2</span> <span>Компонентне і обєктово-орьєнтоване проґрамованя</span> </div> </a> <ul id="toc-Компонентне_і_обєктово-орьєнтоване_проґрамованя-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Метапроґрамованя" class="vector-toc-list-item vector-toc-level-3"> <a class="vector-toc-link" href="#Метапроґрамованя"> <div class="vector-toc-text"> <span class="vector-toc-numb">8.2.3</span> <span>Метапроґрамованя</span> </div> </a> <ul id="toc-Метапроґрамованя-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Кросплатформность" class="vector-toc-list-item vector-toc-level-3"> <a class="vector-toc-link" href="#Кросплатформность"> <div class="vector-toc-text"> <span class="vector-toc-numb">8.2.4</span> <span>Кросплатформность</span> </div> </a> <ul id="toc-Кросплатформность-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Удсутность_можностю" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Удсутность_можностю"> <div class="vector-toc-text"> <span class="vector-toc-numb">8.3</span> <span>Удсутность можностю</span> </div> </a> <ul id="toc-Удсутность_можностю-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Ізвышні_і_небезпечні_можности" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Ізвышні_і_небезпечні_можности"> <div class="vector-toc-text"> <span class="vector-toc-numb">8.4</span> <span>Ізвышні і небезпечні можности</span> </div> </a> <ul id="toc-Ізвышні_і_небезпечні_можности-sublist" class="vector-toc-list"> <li id="toc-Встроенные_средства_обхода_ограничений" class="vector-toc-list-item vector-toc-level-3"> <a class="vector-toc-link" href="#Встроенные_средства_обхода_ограничений"> <div class="vector-toc-text"> <span class="vector-toc-numb">8.4.1</span> <span>Встроенные средства обхода ограничений</span> </div> </a> <ul id="toc-Встроенные_средства_обхода_ограничений-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Неконтролуйиме_макропудставліня" class="vector-toc-list-item vector-toc-level-3"> <a class="vector-toc-link" href="#Неконтролуйиме_макропудставліня"> <div class="vector-toc-text"> <span class="vector-toc-numb">8.4.2</span> <span>Неконтролуйиме макропудставліня</span> </div> </a> <ul id="toc-Неконтролуйиме_макропудставліня-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Проблемы_переубтерьханя" class="vector-toc-list-item vector-toc-level-3"> <a class="vector-toc-link" href="#Проблемы_переубтерьханя"> <div class="vector-toc-text"> <span class="vector-toc-numb">8.4.3</span> <span>Проблемы переубтерьханя</span> </div> </a> <ul id="toc-Проблемы_переубтерьханя-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Вылічна_ефектівность" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Вылічна_ефектівность"> <div class="vector-toc-text"> <span class="vector-toc-numb">8.5</span> <span>Вылічна ефектівность</span> </div> </a> <ul id="toc-Вылічна_ефектівность-sublist" class="vector-toc-list"> <li id="toc-Резултувущый_обєм_оконаного_кода" class="vector-toc-list-item vector-toc-level-3"> <a class="vector-toc-link" href="#Резултувущый_обєм_оконаного_кода"> <div class="vector-toc-text"> <span class="vector-toc-numb">8.5.1</span> <span>Резултувущый обєм оконаного кода</span> </div> </a> <ul id="toc-Резултувущый_обєм_оконаного_кода-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Потенціал_оптімізації" class="vector-toc-list-item vector-toc-level-3"> <a class="vector-toc-link" href="#Потенціал_оптімізації"> <div class="vector-toc-text"> <span class="vector-toc-numb">8.5.2</span> <span>Потенціал оптімізації</span> </div> </a> <ul id="toc-Потенціал_оптімізації-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Ефектівне_кроманёваня_тямов" class="vector-toc-list-item vector-toc-level-3"> <a class="vector-toc-link" href="#Ефектівне_кроманёваня_тямов"> <div class="vector-toc-text"> <span class="vector-toc-numb">8.5.3</span> <span>Ефектівне кроманёваня тямов</span> </div> </a> <ul id="toc-Ефектівне_кроманёваня_тямов-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Резултатівность" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Резултатівность"> <div class="vector-toc-text"> <span class="vector-toc-numb">8.6</span> <span>Резултатівность</span> </div> </a> <ul id="toc-Резултатівность-sublist" class="vector-toc-list"> <li id="toc-Квалічность_і_култура_проґрамованя" class="vector-toc-list-item vector-toc-level-3"> <a class="vector-toc-link" href="#Квалічность_і_култура_проґрамованя"> <div class="vector-toc-text"> <span class="vector-toc-numb">8.6.1</span> <span>Квалічность і култура проґрамованя</span> </div> </a> <ul id="toc-Квалічность_і_култура_проґрамованя-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Выправліня_выправленого" class="vector-toc-list-item vector-toc-level-3"> <a class="vector-toc-link" href="#Выправліня_выправленого"> <div class="vector-toc-text"> <span class="vector-toc-numb">8.6.2</span> <span>Выправліня выправленого</span> </div> </a> <ul id="toc-Выправліня_выправленого-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Тяжкость_подля_самої_тяжкости" class="vector-toc-list-item vector-toc-level-3"> <a class="vector-toc-link" href="#Тяжкость_подля_самої_тяжкости"> <div class="vector-toc-text"> <span class="vector-toc-numb">8.6.3</span> <span>Тяжкость подля самої тяжкости</span> </div> </a> <ul id="toc-Тяжкость_подля_самої_тяжкости-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Саботаж" class="vector-toc-list-item vector-toc-level-3"> <a class="vector-toc-link" href="#Саботаж"> <div class="vector-toc-text"> <span class="vector-toc-numb">8.6.4</span> <span>Саботаж</span> </div> </a> <ul id="toc-Саботаж-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Ненадійность_продукта" class="vector-toc-list-item vector-toc-level-3"> <a class="vector-toc-link" href="#Ненадійность_продукта"> <div class="vector-toc-text"> <span class="vector-toc-numb">8.6.5</span> <span>Ненадійность продукта</span> </div> </a> <ul id="toc-Ненадійность_продукта-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Менеджмент_проєкту" class="vector-toc-list-item vector-toc-level-3"> <a class="vector-toc-link" href="#Менеджмент_проєкту"> <div class="vector-toc-text"> <span class="vector-toc-numb">8.6.6</span> <span>Менеджмент проєкту</span> </div> </a> <ul id="toc-Менеджмент_проєкту-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> </ul> </li> <li id="toc-Вплыв_і_алтернатівы" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Вплыв_і_алтернатівы"> <div class="vector-toc-text"> <span class="vector-toc-numb">9</span> <span>Вплыв і алтернатівы</span> </div> </a> <ul id="toc-Вплыв_і_алтернатівы-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Популарні_проґрамы_зотворині_на_нему" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Популарні_проґрамы_зотворині_на_нему"> <div class="vector-toc-text"> <span class="vector-toc-numb">10</span> <span>Популарні проґрамы зотворині на нему</span> </div> </a> <ul id="toc-Популарні_проґрамы_зотворині_на_нему-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Никай_ся_втож" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Никай_ся_втож"> <div class="vector-toc-text"> <span class="vector-toc-numb">11</span> <span>Никай ся втож</span> </div> </a> <ul id="toc-Никай_ся_втож-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Пудміткы" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Пудміткы"> <div class="vector-toc-text"> <span class="vector-toc-numb">12</span> <span>Пудміткы</span> </div> </a> <ul id="toc-Пудміткы-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Литература" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Литература"> <div class="vector-toc-text"> <span class="vector-toc-numb">13</span> <span>Литература</span> </div> </a> <ul id="toc-Литература-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Удкликаня" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Удкликаня"> <div class="vector-toc-text"> <span class="vector-toc-numb">14</span> <span>Удкликаня</span> </div> </a> <ul id="toc-Удкликаня-sublist" class="vector-toc-list"> </ul> </li> </ul> </div> </div> </nav> </div> </div> <div class="mw-content-container"> <main id="content" class="mw-body"> <header class="mw-body-header vector-page-titlebar"> <nav aria-label="Зміст" class="vector-toc-landmark"> <div id="vector-page-titlebar-toc" class="vector-dropdown vector-page-titlebar-toc vector-button-flush-left" title="Содержай" > <input type="checkbox" id="vector-page-titlebar-toc-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-page-titlebar-toc" class="vector-dropdown-checkbox " aria-label="Указати/спрятати содержай" > <label id="vector-page-titlebar-toc-label" for="vector-page-titlebar-toc-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-listBullet mw-ui-icon-wikimedia-listBullet"></span> <span class="vector-dropdown-label-text">Указати/спрятати содержай</span> </label> <div class="vector-dropdown-content"> <div id="vector-page-titlebar-toc-unpinned-container" class="vector-unpinned-container"> </div> </div> </div> </nav> <h1 id="firstHeading" class="firstHeading mw-first-heading"><span class="mw-page-title-main">C++</span></h1> <div id="p-lang-btn" class="vector-dropdown mw-portlet mw-portlet-lang" > <input type="checkbox" id="p-lang-btn-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-p-lang-btn" class="vector-dropdown-checkbox mw-interlanguage-selector" aria-label="Перейдіть до статті іншою мовою. Доступний у 110 мовах" > <label id="p-lang-btn-label" for="p-lang-btn-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--action-progressive mw-portlet-lang-heading-110" aria-hidden="true" ><span class="vector-icon mw-ui-icon-language-progressive mw-ui-icon-wikimedia-language-progressive"></span> <span class="vector-dropdown-label-text">110 мов</span> </label> <div class="vector-dropdown-content"> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li class="interlanguage-link interwiki-af mw-list-item"><a href="https://af.wikipedia.org/wiki/C%2B%2B" title="C++ — африкаанс" lang="af" hreflang="af" data-title="C++" data-language-autonym="Afrikaans" data-language-local-name="африкаанс" class="interlanguage-link-target"><span>Afrikaans</span></a></li><li class="interlanguage-link interwiki-an mw-list-item"><a href="https://an.wikipedia.org/wiki/C%2B%2B" title="C++ — арагонська" lang="an" hreflang="an" data-title="C++" data-language-autonym="Aragonés" data-language-local-name="арагонська" class="interlanguage-link-target"><span>Aragonés</span></a></li><li class="interlanguage-link interwiki-ar mw-list-item"><a href="https://ar.wikipedia.org/wiki/%D8%B3%D9%8A%2B%2B" title="سي++ — арабська" lang="ar" hreflang="ar" data-title="سي++" data-language-autonym="العربية" data-language-local-name="арабська" class="interlanguage-link-target"><span>العربية</span></a></li><li class="interlanguage-link interwiki-arz mw-list-item"><a href="https://arz.wikipedia.org/wiki/%D8%B3%D9%89%2B%2B" title="سى++ — Egyptian Arabic" lang="arz" hreflang="arz" data-title="سى++" data-language-autonym="مصرى" data-language-local-name="Egyptian Arabic" class="interlanguage-link-target"><span>مصرى</span></a></li><li class="interlanguage-link interwiki-as mw-list-item"><a href="https://as.wikipedia.org/wiki/%E0%A6%9A%E0%A6%BF%2B%2B" title="চি++ — асамська" lang="as" hreflang="as" data-title="চি++" data-language-autonym="অসমীয়া" data-language-local-name="асамська" class="interlanguage-link-target"><span>অসমীয়া</span></a></li><li class="interlanguage-link interwiki-ast mw-list-item"><a href="https://ast.wikipedia.org/wiki/C%2B%2B" title="C++ — астурійська" lang="ast" hreflang="ast" data-title="C++" data-language-autonym="Asturianu" data-language-local-name="астурійська" class="interlanguage-link-target"><span>Asturianu</span></a></li><li class="interlanguage-link interwiki-az mw-list-item"><a href="https://az.wikipedia.org/wiki/C%2B%2B" title="C++ — азербайджанська" lang="az" hreflang="az" data-title="C++" data-language-autonym="Azərbaycanca" data-language-local-name="азербайджанська" class="interlanguage-link-target"><span>Azərbaycanca</span></a></li><li class="interlanguage-link interwiki-azb mw-list-item"><a href="https://azb.wikipedia.org/wiki/%D8%B3%DB%8C%2B%2B" title="سی++ — South Azerbaijani" lang="azb" hreflang="azb" data-title="سی++" data-language-autonym="تۆرکجه" data-language-local-name="South Azerbaijani" class="interlanguage-link-target"><span>تۆرکجه</span></a></li><li class="interlanguage-link interwiki-bat-smg mw-list-item"><a href="https://bat-smg.wikipedia.org/wiki/C%2B%2B" title="C++ — Samogitian" lang="sgs" hreflang="sgs" data-title="C++" data-language-autonym="Žemaitėška" data-language-local-name="Samogitian" class="interlanguage-link-target"><span>Žemaitėška</span></a></li><li class="interlanguage-link interwiki-be mw-list-item"><a href="https://be.wikipedia.org/wiki/C%2B%2B" title="C++ — білоруська" lang="be" hreflang="be" data-title="C++" data-language-autonym="Беларуская" data-language-local-name="білоруська" class="interlanguage-link-target"><span>Беларуская</span></a></li><li class="interlanguage-link interwiki-be-x-old mw-list-item"><a href="https://be-tarask.wikipedia.org/wiki/C%2B%2B" title="C++ — белорусский (тарашкевица)" lang="be-tarask" hreflang="be-tarask" data-title="C++" data-language-autonym="Беларуская (тарашкевіца)" data-language-local-name="белорусский (тарашкевица)" class="interlanguage-link-target"><span>Беларуская (тарашкевіца)</span></a></li><li class="interlanguage-link interwiki-bg mw-list-item"><a href="https://bg.wikipedia.org/wiki/C%2B%2B" title="C++ — болгарська" lang="bg" hreflang="bg" data-title="C++" data-language-autonym="Български" data-language-local-name="болгарська" class="interlanguage-link-target"><span>Български</span></a></li><li class="interlanguage-link interwiki-bn mw-list-item"><a href="https://bn.wikipedia.org/wiki/%E0%A6%B8%E0%A6%BF%2B%2B" title="সি++ — бенгальська" lang="bn" hreflang="bn" data-title="সি++" data-language-autonym="বাংলা" data-language-local-name="бенгальська" class="interlanguage-link-target"><span>বাংলা</span></a></li><li class="interlanguage-link interwiki-bo mw-list-item"><a href="https://bo.wikipedia.org/wiki/C%2B" title="C+ — тибетська" lang="bo" hreflang="bo" data-title="C+" data-language-autonym="བོད་ཡིག" data-language-local-name="тибетська" class="interlanguage-link-target"><span>བོད་ཡིག</span></a></li><li class="interlanguage-link interwiki-br mw-list-item"><a href="https://br.wikipedia.org/wiki/C%2B%2B" title="C++ — бретонська" lang="br" hreflang="br" data-title="C++" data-language-autonym="Brezhoneg" data-language-local-name="бретонська" class="interlanguage-link-target"><span>Brezhoneg</span></a></li><li class="interlanguage-link interwiki-bs mw-list-item"><a href="https://bs.wikipedia.org/wiki/C%2B%2B" title="C++ — боснійська" lang="bs" hreflang="bs" data-title="C++" data-language-autonym="Bosanski" data-language-local-name="боснійська" class="interlanguage-link-target"><span>Bosanski</span></a></li><li class="interlanguage-link interwiki-bug mw-list-item"><a href="https://bug.wikipedia.org/wiki/C%2B%2B" title="C++ — бугійська" lang="bug" hreflang="bug" data-title="C++" data-language-autonym="Basa Ugi" data-language-local-name="бугійська" class="interlanguage-link-target"><span>Basa Ugi</span></a></li><li class="interlanguage-link interwiki-ca mw-list-item"><a href="https://ca.wikipedia.org/wiki/C%2B%2B" title="C++ — каталонська" lang="ca" hreflang="ca" data-title="C++" data-language-autonym="Català" data-language-local-name="каталонська" class="interlanguage-link-target"><span>Català</span></a></li><li class="interlanguage-link interwiki-ckb mw-list-item"><a href="https://ckb.wikipedia.org/wiki/%D8%B3%DB%8C%2B%2B" title="سی++ — центральнокурдська" lang="ckb" hreflang="ckb" data-title="سی++" data-language-autonym="کوردی" data-language-local-name="центральнокурдська" class="interlanguage-link-target"><span>کوردی</span></a></li><li class="interlanguage-link interwiki-cs mw-list-item"><a href="https://cs.wikipedia.org/wiki/C%2B%2B" title="C++ — чеська" lang="cs" hreflang="cs" data-title="C++" data-language-autonym="Čeština" data-language-local-name="чеська" class="interlanguage-link-target"><span>Čeština</span></a></li><li class="interlanguage-link interwiki-cv mw-list-item"><a href="https://cv.wikipedia.org/wiki/C%2B%2B" title="C++ — чуваська" lang="cv" hreflang="cv" data-title="C++" data-language-autonym="Чӑвашла" data-language-local-name="чуваська" class="interlanguage-link-target"><span>Чӑвашла</span></a></li><li class="interlanguage-link interwiki-da mw-list-item"><a href="https://da.wikipedia.org/wiki/C%2B%2B" title="C++ — данська" lang="da" hreflang="da" data-title="C++" data-language-autonym="Dansk" data-language-local-name="данська" class="interlanguage-link-target"><span>Dansk</span></a></li><li class="interlanguage-link interwiki-de mw-list-item"><a href="https://de.wikipedia.org/wiki/C%2B%2B" title="C++ — німецька" lang="de" hreflang="de" data-title="C++" data-language-autonym="Deutsch" data-language-local-name="німецька" class="interlanguage-link-target"><span>Deutsch</span></a></li><li class="interlanguage-link interwiki-el mw-list-item"><a href="https://el.wikipedia.org/wiki/C%2B%2B" title="C++ — грецька" lang="el" hreflang="el" data-title="C++" data-language-autonym="Ελληνικά" data-language-local-name="грецька" class="interlanguage-link-target"><span>Ελληνικά</span></a></li><li class="interlanguage-link interwiki-en mw-list-item"><a href="https://en.wikipedia.org/wiki/C%2B%2B" title="C++ — англійська" lang="en" hreflang="en" data-title="C++" data-language-autonym="English" data-language-local-name="англійська" class="interlanguage-link-target"><span>English</span></a></li><li class="interlanguage-link interwiki-eo mw-list-item"><a href="https://eo.wikipedia.org/wiki/C%2B%2B" title="C++ — есперанто" lang="eo" hreflang="eo" data-title="C++" data-language-autonym="Esperanto" data-language-local-name="есперанто" class="interlanguage-link-target"><span>Esperanto</span></a></li><li class="interlanguage-link interwiki-es mw-list-item"><a href="https://es.wikipedia.org/wiki/C%2B%2B" title="C++ — іспанська" lang="es" hreflang="es" data-title="C++" data-language-autonym="Español" data-language-local-name="іспанська" class="interlanguage-link-target"><span>Español</span></a></li><li class="interlanguage-link interwiki-et mw-list-item"><a href="https://et.wikipedia.org/wiki/C%2B%2B" title="C++ — естонська" lang="et" hreflang="et" data-title="C++" data-language-autonym="Eesti" data-language-local-name="естонська" class="interlanguage-link-target"><span>Eesti</span></a></li><li class="interlanguage-link interwiki-eu mw-list-item"><a href="https://eu.wikipedia.org/wiki/C%2B%2B" title="C++ — баскська" lang="eu" hreflang="eu" data-title="C++" data-language-autonym="Euskara" data-language-local-name="баскська" class="interlanguage-link-target"><span>Euskara</span></a></li><li class="interlanguage-link interwiki-fa mw-list-item"><a href="https://fa.wikipedia.org/wiki/C%2B%2B" title="C++ — перська" lang="fa" hreflang="fa" data-title="C++" data-language-autonym="فارسی" data-language-local-name="перська" class="interlanguage-link-target"><span>فارسی</span></a></li><li class="interlanguage-link interwiki-fi mw-list-item"><a href="https://fi.wikipedia.org/wiki/C%2B%2B" title="C++ — фінська" lang="fi" hreflang="fi" data-title="C++" data-language-autonym="Suomi" data-language-local-name="фінська" class="interlanguage-link-target"><span>Suomi</span></a></li><li class="interlanguage-link interwiki-fj mw-list-item"><a href="https://fj.wikipedia.org/wiki/C%2B%2B" title="C++ — фіджі" lang="fj" hreflang="fj" data-title="C++" data-language-autonym="Na Vosa Vakaviti" data-language-local-name="фіджі" class="interlanguage-link-target"><span>Na Vosa Vakaviti</span></a></li><li class="interlanguage-link interwiki-fr mw-list-item"><a href="https://fr.wikipedia.org/wiki/C%2B%2B" title="C++ — французька" lang="fr" hreflang="fr" data-title="C++" data-language-autonym="Français" data-language-local-name="французька" class="interlanguage-link-target"><span>Français</span></a></li><li class="interlanguage-link interwiki-ga mw-list-item"><a href="https://ga.wikipedia.org/wiki/C%2B%2B" title="C++ — ірландська" lang="ga" hreflang="ga" data-title="C++" data-language-autonym="Gaeilge" data-language-local-name="ірландська" class="interlanguage-link-target"><span>Gaeilge</span></a></li><li class="interlanguage-link interwiki-gan mw-list-item"><a href="https://gan.wikipedia.org/wiki/C%2B%2B" title="C++ — ґань" lang="gan" hreflang="gan" data-title="C++" data-language-autonym="贛語" data-language-local-name="ґань" class="interlanguage-link-target"><span>贛語</span></a></li><li class="interlanguage-link interwiki-gl mw-list-item"><a href="https://gl.wikipedia.org/wiki/C%2B%2B" title="C++ — галісійська" lang="gl" hreflang="gl" data-title="C++" data-language-autonym="Galego" data-language-local-name="галісійська" class="interlanguage-link-target"><span>Galego</span></a></li><li class="interlanguage-link interwiki-gu mw-list-item"><a href="https://gu.wikipedia.org/wiki/C%2B%2B(%E0%AA%AA%E0%AB%8D%E0%AA%B0%E0%AB%8B%E0%AA%97%E0%AB%8D%E0%AA%B0%E0%AA%BE%E0%AA%AE%E0%AA%BF%E0%AA%82%E0%AA%97_%E0%AA%AD%E0%AA%BE%E0%AA%B7%E0%AA%BE)" title="C++(પ્રોગ્રામિંગ ભાષા) — гуджараті" lang="gu" hreflang="gu" data-title="C++(પ્રોગ્રામિંગ ભાષા)" data-language-autonym="ગુજરાતી" data-language-local-name="гуджараті" class="interlanguage-link-target"><span>ગુજરાતી</span></a></li><li class="interlanguage-link interwiki-ha mw-list-item"><a href="https://ha.wikipedia.org/wiki/C%2B%2B" title="C++ — хауса" lang="ha" hreflang="ha" data-title="C++" data-language-autonym="Hausa" data-language-local-name="хауса" class="interlanguage-link-target"><span>Hausa</span></a></li><li class="interlanguage-link interwiki-he mw-list-item"><a href="https://he.wikipedia.org/wiki/C%2B%2B" title="C++ — іврит" lang="he" hreflang="he" data-title="C++" data-language-autonym="עברית" data-language-local-name="іврит" class="interlanguage-link-target"><span>עברית</span></a></li><li class="interlanguage-link interwiki-hi mw-list-item"><a href="https://hi.wikipedia.org/wiki/%E0%A4%B8%E0%A5%80%2B%2B" title="सी++ — гінді" lang="hi" hreflang="hi" data-title="सी++" data-language-autonym="हिन्दी" data-language-local-name="гінді" class="interlanguage-link-target"><span>हिन्दी</span></a></li><li class="interlanguage-link interwiki-hr mw-list-item"><a href="https://hr.wikipedia.org/wiki/C%2B%2B" title="C++ — хорватська" lang="hr" hreflang="hr" data-title="C++" data-language-autonym="Hrvatski" data-language-local-name="хорватська" class="interlanguage-link-target"><span>Hrvatski</span></a></li><li class="interlanguage-link interwiki-hu mw-list-item"><a href="https://hu.wikipedia.org/wiki/C%2B%2B" title="C++ — угорська" lang="hu" hreflang="hu" data-title="C++" data-language-autonym="Magyar" data-language-local-name="угорська" class="interlanguage-link-target"><span>Magyar</span></a></li><li class="interlanguage-link interwiki-hy mw-list-item"><a href="https://hy.wikipedia.org/wiki/C%2B%2B" title="C++ — вірменська" lang="hy" hreflang="hy" data-title="C++" data-language-autonym="Հայերեն" data-language-local-name="вірменська" class="interlanguage-link-target"><span>Հայերեն</span></a></li><li class="interlanguage-link interwiki-ia mw-list-item"><a href="https://ia.wikipedia.org/wiki/C%2B%2B" title="C++ — інтерлінгва" lang="ia" hreflang="ia" data-title="C++" data-language-autonym="Interlingua" data-language-local-name="інтерлінгва" class="interlanguage-link-target"><span>Interlingua</span></a></li><li class="interlanguage-link interwiki-id mw-list-item"><a href="https://id.wikipedia.org/wiki/C%2B%2B" title="C++ — індонезійська" lang="id" hreflang="id" data-title="C++" data-language-autonym="Bahasa Indonesia" data-language-local-name="індонезійська" class="interlanguage-link-target"><span>Bahasa Indonesia</span></a></li><li class="interlanguage-link interwiki-io mw-list-item"><a href="https://io.wikipedia.org/wiki/C%2B%2B" title="C++ — ідо" lang="io" hreflang="io" data-title="C++" data-language-autonym="Ido" data-language-local-name="ідо" class="interlanguage-link-target"><span>Ido</span></a></li><li class="interlanguage-link interwiki-is mw-list-item"><a href="https://is.wikipedia.org/wiki/C%2B%2B" title="C++ — ісландська" lang="is" hreflang="is" data-title="C++" data-language-autonym="Íslenska" data-language-local-name="ісландська" class="interlanguage-link-target"><span>Íslenska</span></a></li><li class="interlanguage-link interwiki-it mw-list-item"><a href="https://it.wikipedia.org/wiki/C%2B%2B" title="C++ — італійська" lang="it" hreflang="it" data-title="C++" data-language-autonym="Italiano" data-language-local-name="італійська" class="interlanguage-link-target"><span>Italiano</span></a></li><li class="interlanguage-link interwiki-ja mw-list-item"><a href="https://ja.wikipedia.org/wiki/C%2B%2B" title="C++ — японська" lang="ja" hreflang="ja" data-title="C++" data-language-autonym="日本語" data-language-local-name="японська" class="interlanguage-link-target"><span>日本語</span></a></li><li class="interlanguage-link interwiki-jv mw-list-item"><a href="https://jv.wikipedia.org/wiki/C%2B%2B" title="C++ — яванська" lang="jv" hreflang="jv" data-title="C++" data-language-autonym="Jawa" data-language-local-name="яванська" class="interlanguage-link-target"><span>Jawa</span></a></li><li class="interlanguage-link interwiki-ka mw-list-item"><a href="https://ka.wikipedia.org/wiki/C%2B%2B" title="C++ — грузинська" lang="ka" hreflang="ka" data-title="C++" data-language-autonym="ქართული" data-language-local-name="грузинська" class="interlanguage-link-target"><span>ქართული</span></a></li><li class="interlanguage-link interwiki-kaa mw-list-item"><a href="https://kaa.wikipedia.org/wiki/C%2B%2B" title="C++ — каракалпацька" lang="kaa" hreflang="kaa" data-title="C++" data-language-autonym="Qaraqalpaqsha" data-language-local-name="каракалпацька" class="interlanguage-link-target"><span>Qaraqalpaqsha</span></a></li><li class="interlanguage-link interwiki-kk mw-list-item"><a href="https://kk.wikipedia.org/wiki/C%2B%2B" title="C++ — казахська" lang="kk" hreflang="kk" data-title="C++" data-language-autonym="Қазақша" data-language-local-name="казахська" class="interlanguage-link-target"><span>Қазақша</span></a></li><li class="interlanguage-link interwiki-kn mw-list-item"><a href="https://kn.wikipedia.org/wiki/%E0%B2%B8%E0%B2%BF%2B%2B" title="ಸಿ++ — каннада" lang="kn" hreflang="kn" data-title="ಸಿ++" data-language-autonym="ಕನ್ನಡ" data-language-local-name="каннада" class="interlanguage-link-target"><span>ಕನ್ನಡ</span></a></li><li class="interlanguage-link interwiki-ko mw-list-item"><a href="https://ko.wikipedia.org/wiki/C%2B%2B" title="C++ — корейська" lang="ko" hreflang="ko" data-title="C++" data-language-autonym="한국어" data-language-local-name="корейська" class="interlanguage-link-target"><span>한국어</span></a></li><li class="interlanguage-link interwiki-ky mw-list-item"><a href="https://ky.wikipedia.org/wiki/C%2B%2B" title="C++ — киргизька" lang="ky" hreflang="ky" data-title="C++" data-language-autonym="Кыргызча" data-language-local-name="киргизька" class="interlanguage-link-target"><span>Кыргызча</span></a></li><li class="interlanguage-link interwiki-la mw-list-item"><a href="https://la.wikipedia.org/wiki/C%2B%2B" title="C++ — латинська" lang="la" hreflang="la" data-title="C++" data-language-autonym="Latina" data-language-local-name="латинська" class="interlanguage-link-target"><span>Latina</span></a></li><li class="interlanguage-link interwiki-lb mw-list-item"><a href="https://lb.wikipedia.org/wiki/C%2B%2B" title="C++ — люксембурзька" lang="lb" hreflang="lb" data-title="C++" data-language-autonym="Lëtzebuergesch" data-language-local-name="люксембурзька" class="interlanguage-link-target"><span>Lëtzebuergesch</span></a></li><li class="interlanguage-link interwiki-lmo mw-list-item"><a href="https://lmo.wikipedia.org/wiki/C%2B%2B" title="C++ — ломбардська" lang="lmo" hreflang="lmo" data-title="C++" data-language-autonym="Lombard" data-language-local-name="ломбардська" class="interlanguage-link-target"><span>Lombard</span></a></li><li class="interlanguage-link interwiki-lt mw-list-item"><a href="https://lt.wikipedia.org/wiki/C%2B%2B" title="C++ — литовська" lang="lt" hreflang="lt" data-title="C++" data-language-autonym="Lietuvių" data-language-local-name="литовська" class="interlanguage-link-target"><span>Lietuvių</span></a></li><li class="interlanguage-link interwiki-lv mw-list-item"><a href="https://lv.wikipedia.org/wiki/C%2B%2B" title="C++ — латиська" lang="lv" hreflang="lv" data-title="C++" data-language-autonym="Latviešu" data-language-local-name="латиська" class="interlanguage-link-target"><span>Latviešu</span></a></li><li class="interlanguage-link interwiki-min mw-list-item"><a href="https://min.wikipedia.org/wiki/C%2B%2B" title="C++ — мінангкабау" lang="min" hreflang="min" data-title="C++" data-language-autonym="Minangkabau" data-language-local-name="мінангкабау" class="interlanguage-link-target"><span>Minangkabau</span></a></li><li class="interlanguage-link interwiki-mk mw-list-item"><a href="https://mk.wikipedia.org/wiki/C%2B%2B" title="C++ — македонська" lang="mk" hreflang="mk" data-title="C++" data-language-autonym="Македонски" data-language-local-name="македонська" class="interlanguage-link-target"><span>Македонски</span></a></li><li class="interlanguage-link interwiki-ml mw-list-item"><a href="https://ml.wikipedia.org/wiki/%E0%B4%B8%E0%B4%BF%2B%2B" title="സി++ — малаялам" lang="ml" hreflang="ml" data-title="സി++" data-language-autonym="മലയാളം" data-language-local-name="малаялам" class="interlanguage-link-target"><span>മലയാളം</span></a></li><li class="interlanguage-link interwiki-mn mw-list-item"><a href="https://mn.wikipedia.org/wiki/C%2B%2B" title="C++ — монгольська" lang="mn" hreflang="mn" data-title="C++" data-language-autonym="Монгол" data-language-local-name="монгольська" class="interlanguage-link-target"><span>Монгол</span></a></li><li class="interlanguage-link interwiki-mr mw-list-item"><a href="https://mr.wikipedia.org/wiki/%E0%A4%B8%E0%A5%80%2B%2B" title="सी++ — маратхі" lang="mr" hreflang="mr" data-title="सी++" data-language-autonym="मराठी" data-language-local-name="маратхі" class="interlanguage-link-target"><span>मराठी</span></a></li><li class="interlanguage-link interwiki-ms mw-list-item"><a href="https://ms.wikipedia.org/wiki/C%2B%2B" title="C++ — малайська" lang="ms" hreflang="ms" data-title="C++" data-language-autonym="Bahasa Melayu" data-language-local-name="малайська" class="interlanguage-link-target"><span>Bahasa Melayu</span></a></li><li class="interlanguage-link interwiki-my mw-list-item"><a href="https://my.wikipedia.org/wiki/C%2B%2B" title="C++ — бірманська" lang="my" hreflang="my" data-title="C++" data-language-autonym="မြန်မာဘာသာ" data-language-local-name="бірманська" class="interlanguage-link-target"><span>မြန်မာဘာသာ</span></a></li><li class="interlanguage-link interwiki-new mw-list-item"><a href="https://new.wikipedia.org/wiki/%E0%A4%B8%E0%A5%80%2B%2B" title="सी++ — неварі" lang="new" hreflang="new" data-title="सी++" data-language-autonym="नेपाल भाषा" data-language-local-name="неварі" class="interlanguage-link-target"><span>नेपाल भाषा</span></a></li><li class="interlanguage-link interwiki-nl mw-list-item"><a href="https://nl.wikipedia.org/wiki/C%2B%2B" title="C++ — нідерландська" lang="nl" hreflang="nl" data-title="C++" data-language-autonym="Nederlands" data-language-local-name="нідерландська" class="interlanguage-link-target"><span>Nederlands</span></a></li><li class="interlanguage-link interwiki-nn mw-list-item"><a href="https://nn.wikipedia.org/wiki/C%2B%2B" title="C++ — норвезька (нюношк)" lang="nn" hreflang="nn" data-title="C++" data-language-autonym="Norsk nynorsk" data-language-local-name="норвезька (нюношк)" class="interlanguage-link-target"><span>Norsk nynorsk</span></a></li><li class="interlanguage-link interwiki-no mw-list-item"><a href="https://no.wikipedia.org/wiki/C%2B%2B" title="C++ — норвезька (букмол)" lang="nb" hreflang="nb" data-title="C++" data-language-autonym="Norsk bokmål" data-language-local-name="норвезька (букмол)" class="interlanguage-link-target"><span>Norsk bokmål</span></a></li><li class="interlanguage-link interwiki-oc mw-list-item"><a href="https://oc.wikipedia.org/wiki/C%2B%2B" title="C++ — окситанська" lang="oc" hreflang="oc" data-title="C++" data-language-autonym="Occitan" data-language-local-name="окситанська" class="interlanguage-link-target"><span>Occitan</span></a></li><li class="interlanguage-link interwiki-pa mw-list-item"><a href="https://pa.wikipedia.org/wiki/%E0%A8%B8%E0%A9%80%2B%2B" title="ਸੀ++ — панджабі" lang="pa" hreflang="pa" data-title="ਸੀ++" data-language-autonym="ਪੰਜਾਬੀ" data-language-local-name="панджабі" class="interlanguage-link-target"><span>ਪੰਜਾਬੀ</span></a></li><li class="interlanguage-link interwiki-pfl mw-list-item"><a href="https://pfl.wikipedia.org/wiki/C%2B%2B" title="C++ — Palatine German" lang="pfl" hreflang="pfl" data-title="C++" data-language-autonym="Pälzisch" data-language-local-name="Palatine German" class="interlanguage-link-target"><span>Pälzisch</span></a></li><li class="interlanguage-link interwiki-pl mw-list-item"><a href="https://pl.wikipedia.org/wiki/C%2B%2B" title="C++ — польська" lang="pl" hreflang="pl" data-title="C++" data-language-autonym="Polski" data-language-local-name="польська" class="interlanguage-link-target"><span>Polski</span></a></li><li class="interlanguage-link interwiki-pnb mw-list-item"><a href="https://pnb.wikipedia.org/wiki/%D8%B3%DB%8C%2B%2B" title="سی++ — Western Punjabi" lang="pnb" hreflang="pnb" data-title="سی++" data-language-autonym="پنجابی" data-language-local-name="Western Punjabi" class="interlanguage-link-target"><span>پنجابی</span></a></li><li class="interlanguage-link interwiki-pt mw-list-item"><a href="https://pt.wikipedia.org/wiki/C%2B%2B" title="C++ — португальська" lang="pt" hreflang="pt" data-title="C++" data-language-autonym="Português" data-language-local-name="португальська" class="interlanguage-link-target"><span>Português</span></a></li><li class="interlanguage-link interwiki-qu mw-list-item"><a href="https://qu.wikipedia.org/wiki/C%2B%2B" title="C++ — кечуа" lang="qu" hreflang="qu" data-title="C++" data-language-autonym="Runa Simi" data-language-local-name="кечуа" class="interlanguage-link-target"><span>Runa Simi</span></a></li><li class="interlanguage-link interwiki-ro mw-list-item"><a href="https://ro.wikipedia.org/wiki/C%2B%2B" title="C++ — румунська" lang="ro" hreflang="ro" data-title="C++" data-language-autonym="Română" data-language-local-name="румунська" class="interlanguage-link-target"><span>Română</span></a></li><li class="interlanguage-link interwiki-ru mw-list-item"><a href="https://ru.wikipedia.org/wiki/C%2B%2B" title="C++ — російська" lang="ru" hreflang="ru" data-title="C++" data-language-autonym="Русский" data-language-local-name="російська" class="interlanguage-link-target"><span>Русский</span></a></li><li class="interlanguage-link interwiki-sah mw-list-item"><a href="https://sah.wikipedia.org/wiki/C%2B%2B" title="C++ — якутська" lang="sah" hreflang="sah" data-title="C++" data-language-autonym="Саха тыла" data-language-local-name="якутська" class="interlanguage-link-target"><span>Саха тыла</span></a></li><li class="interlanguage-link interwiki-sh mw-list-item"><a href="https://sh.wikipedia.org/wiki/C%2B%2B" title="C++ — сербсько-хорватська" lang="sh" hreflang="sh" data-title="C++" data-language-autonym="Srpskohrvatski / српскохрватски" data-language-local-name="сербсько-хорватська" class="interlanguage-link-target"><span>Srpskohrvatski / српскохрватски</span></a></li><li class="interlanguage-link interwiki-si mw-list-item"><a href="https://si.wikipedia.org/wiki/C%2B%2B" title="C++ — сингальська" lang="si" hreflang="si" data-title="C++" data-language-autonym="සිංහල" data-language-local-name="сингальська" class="interlanguage-link-target"><span>සිංහල</span></a></li><li class="interlanguage-link interwiki-simple mw-list-item"><a href="https://simple.wikipedia.org/wiki/C%2B%2B" title="C++ — Simple English" lang="en-simple" hreflang="en-simple" data-title="C++" data-language-autonym="Simple English" data-language-local-name="Simple English" class="interlanguage-link-target"><span>Simple English</span></a></li><li class="interlanguage-link interwiki-sk mw-list-item"><a href="https://sk.wikipedia.org/wiki/C%2B%2B" title="C++ — словацька" lang="sk" hreflang="sk" data-title="C++" data-language-autonym="Slovenčina" data-language-local-name="словацька" class="interlanguage-link-target"><span>Slovenčina</span></a></li><li class="interlanguage-link interwiki-sl mw-list-item"><a href="https://sl.wikipedia.org/wiki/C%2B%2B" title="C++ — словенська" lang="sl" hreflang="sl" data-title="C++" data-language-autonym="Slovenščina" data-language-local-name="словенська" class="interlanguage-link-target"><span>Slovenščina</span></a></li><li class="interlanguage-link interwiki-sq mw-list-item"><a href="https://sq.wikipedia.org/wiki/C%2B%2B" title="C++ — албанська" lang="sq" hreflang="sq" data-title="C++" data-language-autonym="Shqip" data-language-local-name="албанська" class="interlanguage-link-target"><span>Shqip</span></a></li><li class="interlanguage-link interwiki-sr mw-list-item"><a href="https://sr.wikipedia.org/wiki/C%2B%2B" title="C++ — сербська" lang="sr" hreflang="sr" data-title="C++" data-language-autonym="Српски / srpski" data-language-local-name="сербська" class="interlanguage-link-target"><span>Српски / srpski</span></a></li><li class="interlanguage-link interwiki-sv mw-list-item"><a href="https://sv.wikipedia.org/wiki/C%2B%2B" title="C++ — шведська" lang="sv" hreflang="sv" data-title="C++" data-language-autonym="Svenska" data-language-local-name="шведська" class="interlanguage-link-target"><span>Svenska</span></a></li><li class="interlanguage-link interwiki-sw mw-list-item"><a href="https://sw.wikipedia.org/wiki/C%2B%2B" title="C++ — суахілі" lang="sw" hreflang="sw" data-title="C++" data-language-autonym="Kiswahili" data-language-local-name="суахілі" class="interlanguage-link-target"><span>Kiswahili</span></a></li><li class="interlanguage-link interwiki-ta mw-list-item"><a href="https://ta.wikipedia.org/wiki/%E0%AE%9A%E0%AE%BF%2B%2B" title="சி++ — тамільська" lang="ta" hreflang="ta" data-title="சி++" data-language-autonym="தமிழ்" data-language-local-name="тамільська" class="interlanguage-link-target"><span>தமிழ்</span></a></li><li class="interlanguage-link interwiki-te mw-list-item"><a href="https://te.wikipedia.org/wiki/%E0%B0%B8%E0%B1%80_%E0%B0%AA%E0%B1%8D%E0%B0%B2%E0%B0%B8%E0%B1%8D_%E0%B0%AA%E0%B1%8D%E0%B0%B2%E0%B0%B8%E0%B1%8D" title="సీ ప్లస్ ప్లస్ — телугу" lang="te" hreflang="te" data-title="సీ ప్లస్ ప్లస్" data-language-autonym="తెలుగు" data-language-local-name="телугу" class="interlanguage-link-target"><span>తెలుగు</span></a></li><li class="interlanguage-link interwiki-tg mw-list-item"><a href="https://tg.wikipedia.org/wiki/C%2B%2B" title="C++ — таджицька" lang="tg" hreflang="tg" data-title="C++" data-language-autonym="Тоҷикӣ" data-language-local-name="таджицька" class="interlanguage-link-target"><span>Тоҷикӣ</span></a></li><li class="interlanguage-link interwiki-th mw-list-item"><a href="https://th.wikipedia.org/wiki/%E0%B8%A0%E0%B8%B2%E0%B8%A9%E0%B8%B2%E0%B8%8B%E0%B8%B5%E0%B8%9E%E0%B8%A5%E0%B8%B1%E0%B8%AA%E0%B8%9E%E0%B8%A5%E0%B8%B1%E0%B8%AA" title="ภาษาซีพลัสพลัส — тайська" lang="th" hreflang="th" data-title="ภาษาซีพลัสพลัส" data-language-autonym="ไทย" data-language-local-name="тайська" class="interlanguage-link-target"><span>ไทย</span></a></li><li class="interlanguage-link interwiki-tk mw-list-item"><a href="https://tk.wikipedia.org/wiki/C%2B%2B_programmirleme" title="C++ programmirleme — туркменська" lang="tk" hreflang="tk" data-title="C++ programmirleme" data-language-autonym="Türkmençe" data-language-local-name="туркменська" class="interlanguage-link-target"><span>Türkmençe</span></a></li><li class="interlanguage-link interwiki-tr mw-list-item"><a href="https://tr.wikipedia.org/wiki/C%2B%2B" title="C++ — турецька" lang="tr" hreflang="tr" data-title="C++" data-language-autonym="Türkçe" data-language-local-name="турецька" class="interlanguage-link-target"><span>Türkçe</span></a></li><li class="interlanguage-link interwiki-tt mw-list-item"><a href="https://tt.wikipedia.org/wiki/C%2B%2B" title="C++ — татарська" lang="tt" hreflang="tt" data-title="C++" data-language-autonym="Татарча / tatarça" data-language-local-name="татарська" class="interlanguage-link-target"><span>Татарча / tatarça</span></a></li><li class="interlanguage-link interwiki-uk mw-list-item"><a href="https://uk.wikipedia.org/wiki/C%2B%2B" title="C++ — українська" lang="uk" hreflang="uk" data-title="C++" data-language-autonym="Українська" data-language-local-name="українська" class="interlanguage-link-target"><span>Українська</span></a></li><li class="interlanguage-link interwiki-ur mw-list-item"><a href="https://ur.wikipedia.org/wiki/%D8%B3%DB%8C%2B%2B" title="سی++ — урду" lang="ur" hreflang="ur" data-title="سی++" data-language-autonym="اردو" data-language-local-name="урду" class="interlanguage-link-target"><span>اردو</span></a></li><li class="interlanguage-link interwiki-uz mw-list-item"><a href="https://uz.wikipedia.org/wiki/C%2B%2B" title="C++ — узбецька" lang="uz" hreflang="uz" data-title="C++" data-language-autonym="Oʻzbekcha / ўзбекча" data-language-local-name="узбецька" class="interlanguage-link-target"><span>Oʻzbekcha / ўзбекча</span></a></li><li class="interlanguage-link interwiki-vi mw-list-item"><a href="https://vi.wikipedia.org/wiki/C%2B%2B" title="C++ — вʼєтнамська" lang="vi" hreflang="vi" data-title="C++" data-language-autonym="Tiếng Việt" data-language-local-name="вʼєтнамська" class="interlanguage-link-target"><span>Tiếng Việt</span></a></li><li class="interlanguage-link interwiki-war mw-list-item"><a href="https://war.wikipedia.org/wiki/C%2B%2B" title="C++ — варай" lang="war" hreflang="war" data-title="C++" data-language-autonym="Winaray" data-language-local-name="варай" class="interlanguage-link-target"><span>Winaray</span></a></li><li class="interlanguage-link interwiki-wuu mw-list-item"><a href="https://wuu.wikipedia.org/wiki/C%2B%2B" title="C++ — китайська уська" lang="wuu" hreflang="wuu" data-title="C++" data-language-autonym="吴语" data-language-local-name="китайська уська" class="interlanguage-link-target"><span>吴语</span></a></li><li class="interlanguage-link interwiki-yi mw-list-item"><a href="https://yi.wikipedia.org/wiki/%2B%2BC" title="++C — їдиш" lang="yi" hreflang="yi" data-title="++C" data-language-autonym="ייִדיש" data-language-local-name="їдиш" class="interlanguage-link-target"><span>ייִדיש</span></a></li><li class="interlanguage-link interwiki-yo mw-list-item"><a href="https://yo.wikipedia.org/wiki/C%2B%2B" title="C++ — йоруба" lang="yo" hreflang="yo" data-title="C++" data-language-autonym="Yorùbá" data-language-local-name="йоруба" class="interlanguage-link-target"><span>Yorùbá</span></a></li><li class="interlanguage-link interwiki-zh mw-list-item"><a href="https://zh.wikipedia.org/wiki/C%2B%2B" title="C++ — китайська" lang="zh" hreflang="zh" data-title="C++" data-language-autonym="中文" data-language-local-name="китайська" class="interlanguage-link-target"><span>中文</span></a></li><li class="interlanguage-link interwiki-zh-classical mw-list-item"><a href="https://zh-classical.wikipedia.org/wiki/%E4%B8%99%E5%8A%A0%E5%8A%A0" title="丙加加 — Literary Chinese" lang="lzh" hreflang="lzh" data-title="丙加加" data-language-autonym="文言" data-language-local-name="Literary Chinese" class="interlanguage-link-target"><span>文言</span></a></li><li class="interlanguage-link interwiki-zh-min-nan mw-list-item"><a href="https://zh-min-nan.wikipedia.org/wiki/C%2B%2B" title="C++ — південноміньська" lang="nan" hreflang="nan" data-title="C++" data-language-autonym="閩南語 / Bân-lâm-gú" data-language-local-name="південноміньська" class="interlanguage-link-target"><span>閩南語 / Bân-lâm-gú</span></a></li><li class="interlanguage-link interwiki-zh-yue mw-list-item"><a href="https://zh-yue.wikipedia.org/wiki/C%2B%2B" title="C++ — кантонська" lang="yue" hreflang="yue" data-title="C++" data-language-autonym="粵語" data-language-local-name="кантонська" class="interlanguage-link-target"><span>粵語</span></a></li> </ul> <div class="after-portlet after-portlet-lang"><span class="wb-langlinks-edit wb-langlinks-link"><a href="https://www.wikidata.org/wiki/Special:EntityPage/Q2407#sitelinks-wikipedia" title="Редагувати міжмовні посилання" class="wbc-editpage">Едітовати одказы</a></span></div> </div> </div> </div> </header> <div class="vector-page-toolbar"> <div class="vector-page-toolbar-container"> <div id="left-navigation"> <nav aria-label="Просторы назв"> <div id="p-associated-pages" class="vector-menu vector-menu-tabs mw-portlet mw-portlet-associated-pages" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-nstab-main" class="selected vector-tab-noicon mw-list-item"><a href="/wiki/C%2B%2B" title="Обсяг сторінкы [c]" accesskey="c"><span>Сторінка</span></a></li><li id="ca-talk" class="new vector-tab-noicon mw-list-item"><a href="/w/index.php?title=%D0%94%D1%96%D1%81%D0%BA%D1%83%D0%B7%D1%96%D1%8F:C%2B%2B&action=edit&redlink=1" rel="discussion" class="new" title="Діскусія о обсягу сторінкы (такой сторінкы нїт) [t]" accesskey="t"><span>Діскусія</span></a></li> </ul> </div> </div> <div id="vector-variants-dropdown" class="vector-dropdown emptyPortlet" > <input type="checkbox" id="vector-variants-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-variants-dropdown" class="vector-dropdown-checkbox " aria-label="Змінити варіант мови" > <label id="vector-variants-dropdown-label" for="vector-variants-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet" aria-hidden="true" ><span class="vector-dropdown-label-text">русиньскый</span> </label> <div class="vector-dropdown-content"> <div id="p-variants" class="vector-menu mw-portlet mw-portlet-variants emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> </div> </div> </nav> </div> <div id="right-navigation" class="vector-collapsible"> <nav aria-label="Перегляды"> <div id="p-views" class="vector-menu vector-menu-tabs mw-portlet mw-portlet-views" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-view" class="selected vector-tab-noicon mw-list-item"><a href="/wiki/C%2B%2B"><span>Чітати</span></a></li><li id="ca-ve-edit" class="vector-tab-noicon mw-list-item"><a href="/w/index.php?title=C%2B%2B&veaction=edit" title="Редагувати цю сторінку [v]" accesskey="v"><span>Едітовати</span></a></li><li id="ca-edit" class="collapsible vector-tab-noicon mw-list-item"><a href="/w/index.php?title=C%2B%2B&action=edit" title="Редагувати вихідний код сторінки [e]" accesskey="e"><span>Едітовати жрідло</span></a></li><li id="ca-history" class="vector-tab-noicon mw-list-item"><a href="/w/index.php?title=C%2B%2B&action=history" title="Минулы верзії той сторінкы [h]" accesskey="h"><span>Видїти історію</span></a></li> </ul> </div> </div> </nav> <nav class="vector-page-tools-landmark" aria-label="Інструменти сторінки"> <div id="vector-page-tools-dropdown" class="vector-dropdown vector-page-tools-dropdown" > <input type="checkbox" id="vector-page-tools-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-page-tools-dropdown" class="vector-dropdown-checkbox " aria-label="Інштрументы" > <label id="vector-page-tools-dropdown-label" for="vector-page-tools-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet" aria-hidden="true" ><span class="vector-dropdown-label-text">Інштрументы</span> </label> <div class="vector-dropdown-content"> <div id="vector-page-tools-unpinned-container" class="vector-unpinned-container"> <div id="vector-page-tools" class="vector-page-tools vector-pinnable-element"> <div class="vector-pinnable-header vector-page-tools-pinnable-header vector-pinnable-header-unpinned" data-feature-name="page-tools-pinned" data-pinnable-element-id="vector-page-tools" data-pinned-container-id="vector-page-tools-pinned-container" data-unpinned-container-id="vector-page-tools-unpinned-container" > <div class="vector-pinnable-header-label">Інструменти</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-page-tools.pin">перемістити на бічну панель</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-page-tools.unpin">сховати</button> </div> <div id="p-cactions" class="vector-menu mw-portlet mw-portlet-cactions emptyPortlet vector-has-collapsible-items" title="Більше опцій" > <div class="vector-menu-heading"> Дії </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-more-view" class="selected vector-more-collapsible-item mw-list-item"><a href="/wiki/C%2B%2B"><span>Чітати</span></a></li><li id="ca-more-ve-edit" class="vector-more-collapsible-item mw-list-item"><a href="/w/index.php?title=C%2B%2B&veaction=edit" title="Редагувати цю сторінку [v]" accesskey="v"><span>Едітовати</span></a></li><li id="ca-more-edit" class="collapsible vector-more-collapsible-item mw-list-item"><a href="/w/index.php?title=C%2B%2B&action=edit" title="Редагувати вихідний код сторінки [e]" accesskey="e"><span>Едітовати жрідло</span></a></li><li id="ca-more-history" class="vector-more-collapsible-item mw-list-item"><a href="/w/index.php?title=C%2B%2B&action=history"><span>Видїти історію</span></a></li> </ul> </div> </div> <div id="p-tb" class="vector-menu mw-portlet mw-portlet-tb" > <div class="vector-menu-heading"> Загальний </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="t-whatlinkshere" class="mw-list-item"><a href="/wiki/%D0%A8%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D0%BD%D0%B0:%D0%9E%D0%B4%D0%BA%D0%B0%D0%B7%D1%8B_%D0%B3%D0%B5%D0%B2/C%2B%2B" title="Список вшыткых сторінок, што заганяють на тоту сторінку [j]" accesskey="j"><span>Одказы на тоту сторінку</span></a></li><li id="t-recentchangeslinked" class="mw-list-item"><a href="/wiki/%D0%A8%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D0%BD%D0%B0:%D0%9F%D0%BE%D0%B2%D1%8F%D0%B7%D0%B0%D0%BD%D1%8B_%D0%B5%D0%B4%D1%96%D1%82%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F/C%2B%2B" rel="nofollow" title="Послїднї зміны на сторінках, котры мають одказ на тїй сторінцї [k]" accesskey="k"><span>Повязаны зміны</span></a></li><li id="t-upload" class="mw-list-item"><a href="//commons.wikimedia.org/wiki/Special:UploadWizard?uselang=rue" title="Наладовати файлы [u]" accesskey="u"><span>Наладовати файл</span></a></li><li id="t-permalink" class="mw-list-item"><a href="/w/index.php?title=C%2B%2B&oldid=154497" title="Перманентный одказ на тоту верзію сторінкы"><span>Перманентный одказ</span></a></li><li id="t-info" class="mw-list-item"><a href="/w/index.php?title=C%2B%2B&action=info" title="Додаткові відомості про цю сторінку"><span>Інформації о сторінцї</span></a></li><li id="t-cite" class="mw-list-item"><a href="/w/index.php?title=%D0%A8%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D0%BD%D0%B0:%D0%A6%D0%B8%D1%82%D0%B0%D1%82%D0%B0&page=C%2B%2B&id=154497&wpFormIdentifier=titleform" title="Інформації о тім, як цітовати тоту сторінку"><span>Цітовати сторінку</span></a></li><li id="t-urlshortener" class="mw-list-item"><a href="/w/index.php?title=%D0%A8%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D0%BD%D0%B0:UrlShortener&url=https%3A%2F%2Frue.wikipedia.org%2Fwiki%2FC%252B%252B"><span>Отримати вкорочену URL-адресу</span></a></li><li id="t-urlshortener-qrcode" class="mw-list-item"><a href="/w/index.php?title=%D0%A8%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D0%BD%D0%B0:QrCode&url=https%3A%2F%2Frue.wikipedia.org%2Fwiki%2FC%252B%252B"><span>Завантажити QR-код</span></a></li> </ul> </div> </div> <div id="p-coll-print_export" class="vector-menu mw-portlet mw-portlet-coll-print_export" > <div class="vector-menu-heading"> Друк/експорт </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="coll-create_a_book" class="mw-list-item"><a href="/w/index.php?title=%D0%A8%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D0%BD%D0%B0:%D0%9A%D0%BD%D0%B8%D0%B3%D0%B0&bookcmd=book_creator&referer=C%2B%2B"><span>Створїня книгы</span></a></li><li id="coll-download-as-rl" class="mw-list-item"><a href="/w/index.php?title=%D0%A8%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D0%BD%D0%B0:DownloadAsPdf&page=C%2B%2B&action=show-download-screen"><span>Стерьхати ги PDF</span></a></li><li id="t-print" class="mw-list-item"><a href="/w/index.php?title=C%2B%2B&printable=yes" title="Верзія той сторінкы до друку [p]" accesskey="p"><span>Верзія до друку</span></a></li> </ul> </div> </div> <div id="p-wikibase-otherprojects" class="vector-menu mw-portlet mw-portlet-wikibase-otherprojects" > <div class="vector-menu-heading"> У другых проєктох </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li class="wb-otherproject-link wb-otherproject-commons mw-list-item"><a href="https://commons.wikimedia.org/wiki/Category:C%2B%2B" hreflang="en"><span>Вікісклад</span></a></li><li id="t-wikibase" class="wb-otherproject-link wb-otherproject-wikibase-dataitem mw-list-item"><a href="https://www.wikidata.org/wiki/Special:EntityPage/Q2407" title="Посилання на пов’язаний елемент сховища даних [g]" accesskey="g"><span>Елемент Вікіданы</span></a></li> </ul> </div> </div> </div> </div> </div> </div> </nav> </div> </div> </div> <div class="vector-column-end"> <div class="vector-sticky-pinned-container"> <nav class="vector-page-tools-landmark" aria-label="Інструменти сторінки"> <div id="vector-page-tools-pinned-container" class="vector-pinned-container"> </div> </nav> <nav class="vector-appearance-landmark" aria-label="Вызир"> <div id="vector-appearance-pinned-container" class="vector-pinned-container"> <div id="vector-appearance" class="vector-appearance vector-pinnable-element"> <div class="vector-pinnable-header vector-appearance-pinnable-header vector-pinnable-header-pinned" data-feature-name="appearance-pinned" data-pinnable-element-id="vector-appearance" data-pinned-container-id="vector-appearance-pinned-container" data-unpinned-container-id="vector-appearance-unpinned-container" > <div class="vector-pinnable-header-label">Вызир</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-appearance.pin">перемістити на бічну панель</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-appearance.unpin">сховати</button> </div> </div> </div> </nav> </div> </div> <div id="bodyContent" class="vector-body" aria-labelledby="firstHeading" data-mw-ve-target-container> <div class="vector-body-before-content"> <div class="mw-indicators"> </div> <div id="siteSub" class="noprint">Матеріал з Вікіпедія</div> </div> <div id="contentSub"><div id="mw-content-subtitle"></div></div> <div id="mw-content-text" class="mw-body-content"><div class="mw-content-ltr mw-parser-output" lang="rue" dir="ltr"><table class="infobox vevent" cellspacing="5" style="float:right; width:22em; text-align:left; font-size:88%; line-height:1.5em;"><caption class="summary" style="font-size:125%; font-weight:bold;">C++<br /></caption><tbody><tr class=""><td colspan="2" class="" style="text-align:center;"><span typeof="mw:File"><a href="/wiki/%D0%A4%D0%B0%D0%B9%D0%BB:ISO_C%2B%2B_Logo.svg" class="mw-file-description"><img src="//upload.wikimedia.org/wikipedia/commons/thumb/1/18/ISO_C%2B%2B_Logo.svg/200px-ISO_C%2B%2B_Logo.svg.png" decoding="async" width="200" height="225" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/1/18/ISO_C%2B%2B_Logo.svg/300px-ISO_C%2B%2B_Logo.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/1/18/ISO_C%2B%2B_Logo.svg/400px-ISO_C%2B%2B_Logo.svg.png 2x" data-file-width="306" data-file-height="344" /></a></span></td></tr><tr class=""><th style="text-align:left;"><a href="/w/index.php?title=%D0%9F%D0%B0%D1%80%D0%B0%D0%B4%D1%96%D2%91%D0%BC%D0%B0_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F&action=edit&redlink=1" class="new" title="Парадіґма проґрамованя (такой сторінкы нїт)">Парадіґма</a></th><td class="" style=""><a href="/w/index.php?title=%D0%9F%D0%B0%D1%80%D0%B0%D0%B4%D1%96%D2%91%D0%BC%D0%B0_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F&action=edit&redlink=1" class="new" title="Парадіґма проґрамованя (такой сторінкы нїт)">Мултіпарадіґмовый</a>: <a href="/w/index.php?title=%D0%9E%D0%B1%D1%94%D0%BA%D1%82%D0%BD%D0%BE-%D0%BE%D1%80%D1%8C%D1%94%D0%BD%D1%82%D0%BE%D0%B2%D0%B0%D0%BD%D0%B5_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F&action=edit&redlink=1" class="new" title="Обєктно-орьєнтоване проґрамованя (такой сторінкы нїт)">обєктно-орьєнтованый</a>, <a href="/w/index.php?title=%D0%A1%D0%BF%D0%BE%D0%BB%D0%BE%D1%87%D0%BD%D0%B5_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F&action=edit&redlink=1" class="new" title="Сполочне проґрамованя (такой сторінкы нїт)">сполочный</a>, <a href="/w/index.php?title=%D0%9F%D1%80%D0%BE%D1%86%D0%B5%D0%B4%D1%83%D1%80%D0%BD%D0%B5_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F&action=edit&redlink=1" class="new" title="Процедурне проґрамованя (такой сторінкы нїт)">процедурный</a></td></tr><tr class=""><th style="text-align:left;">Обявив ся в</th><td class="" style=""><a href="/wiki/1985" title="1985">1985</a></td></tr><tr class=""><th style="text-align:left;">Дізайноване од</th><td class="organiser" style=""><a href="/w/index.php?title=%D0%91%D1%8F%D1%80%D0%B5%D0%BD_%D0%A8%D1%82%D1%80%D0%B0%D1%83%D1%88%D1%82%D1%80%D1%83%D0%BF&action=edit&redlink=1" class="new" title="Бярен Штрауштруп (такой сторінкы нїт)">Бярен Штрауштруп</a></td></tr><tr class=""><th style="text-align:left;"><a href="/w/index.php?title=%D0%A1%D0%BE%D1%84%D1%82%D0%B2%D0%B5%D1%80%D0%BE%D0%B2%D1%8B%D0%B9_%D0%B2%D1%8B%D0%B2%D0%BE%D1%8F%D1%80%D1%8C&action=edit&redlink=1" class="new" title="Софтверовый вывоярь (такой сторінкы нїт)">Вывоярь</a></th><td class="" style=""><a href="/w/index.php?title=ISO/IEC_JTC1/SC22&action=edit&redlink=1" class="new" title="ISO/IEC JTC1/SC22 (такой сторінкы нїт)">ISO/IEC JTC1/SC22</a><sup class="noprint"><a href="https://en.wikipedia.org/wiki/ISO/IEC_JTC_1/SC_22" class="extiw" title="en:ISO/IEC JTC 1/SC 22"><span title="ISO/IEC JTC 1/SC 22 — версія статті «ISO/IEC JTC1/SC22» англійською мовою" style="font-style:normal;font-weight:normal;font-size:normal">[en]</span></a></sup>/WG21</td></tr><tr class=""><th style="text-align:left;"><a href="/w/index.php?title=Software_release_life_cycle&action=edit&redlink=1" class="new" title="Software release life cycle (такой сторінкы нїт)">Стабілне выданя</a></th><td class="" style="">ISO/IEC 14882:2024 <a href="/w/index.php?title=%D0%A1%2B%2B23&action=edit&redlink=1" class="new" title="С++23 (такой сторінкы нїт)">С++23</a> (19 октобра 2024)</td></tr><tr class=""><th style="text-align:left;"><a href="/w/index.php?title=%D0%A1%D1%96%D1%81%D1%82%D0%B5%D0%BC%D0%B0_%D1%82%D1%96%D0%BF%D1%96%D0%B7%D0%B0%D1%86%D1%96%D1%97&action=edit&redlink=1" class="new" title="Сістема тіпізації (такой сторінкы нїт)">Тіпізація дат</a></th><td class="" style=""><a href="/w/index.php?title=%D0%A1%D1%82%D0%B0%D1%82%D1%96%D1%87%D0%BD%D0%B0_%D1%82%D1%96%D0%BF%D1%96%D0%B7%D0%B0%D1%86%D0%B8%D1%8F&action=edit&redlink=1" class="new" title="Статічна тіпізация (такой сторінкы нїт)">статічный</a>, <a href="/w/index.php?title=%D0%9D%D0%BE%D0%BC%D1%96%D0%BD%D0%B0%D1%82%D1%96%D0%B2%D0%BD%D0%B0_%D1%81%D1%96%D1%81%D1%82%D0%B5%D0%BC%D0%B0_%D1%82%D1%96%D0%BF%D1%96%D0%B7%D0%B0%D1%86%D0%B8%D1%97&action=edit&redlink=1" class="new" title="Номінатівна сістема тіпізациї (такой сторінкы нїт)">номінатівный</a></td></tr><tr class=""><th style="text-align:left;"><a href="/w/index.php?title=%D0%A0%D0%B5%D0%B0%D0%BB%D1%96%D0%B7%D0%B0%D1%86%D1%96%D1%8F_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B0_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F&action=edit&redlink=1" class="new" title="Реалізація языка проґрамованя (такой сторінкы нїт)">Основна реалізація</a></th><td class="" style=""><a href="/w/index.php?title=GNU_Compiler_Collection&action=edit&redlink=1" class="new" title="GNU Compiler Collection (такой сторінкы нїт)">G++</a>, <a href="/w/index.php?title=Microsoft_Visual_C%2B%2B&action=edit&redlink=1" class="new" title="Microsoft Visual C++ (такой сторінкы нїт)">Microsoft Visual C++</a>, <a href="/w/index.php?title=Borland_C%2B%2B_Builder&action=edit&redlink=1" class="new" title="Borland C++ Builder (такой сторінкы нїт)">Borland C++ Builder</a>, <a href="/w/index.php?title=Clang&action=edit&redlink=1" class="new" title="Clang (такой сторінкы нїт)">Clang</a></td></tr><tr class=""><th style="text-align:left;"><a href="/w/index.php?title=%D0%94%D1%96%D0%B0%D0%BB%D0%B5%D0%BA%D1%82_(%D1%80%D0%B0%D1%85%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F)&action=edit&redlink=1" class="new" title="Діалект (рахованя) (такой сторінкы нїт)">Діалекты</a></th><td class="" style="">ISO/IEC 14882:1998, 2003, 2011, 2014, 2017, 2023</td></tr><tr class=""><th style="text-align:left;">Овпливненый з</th><td class="" style=""><span><span>C</span>, <span>Симула</span>, <span>ALGOL 68</span>, <span>CLU</span>, <span>ML</span>, <span><a href="/wiki/%D0%90%D0%B4%D0%B0_(%D1%8F%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F)" title="Ада (язык проґрамованя)">Ада</a></span></span></td></tr><tr class=""><th style="text-align:left;">Овпливнив</th><td class="" style=""><a href="/w/index.php?title=Ada_(%D0%AF%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F)&action=edit&redlink=1" class="new" title="Ada (Язык проґрамованя) (такой сторінкы нїт)">Ada 95</a>, <a href="/w/index.php?title=C_%D0%A8%D0%B0%D1%80%D0%BF&action=edit&redlink=1" class="new" title="C Шарп (такой сторінкы нїт)">C#</a>, <a href="/w/index.php?title=Java_(%D0%AF%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F)&action=edit&redlink=1" class="new" title="Java (Язык проґрамованя) (такой сторінкы нїт)">Java</a>, <a href="/w/index.php?title=PHP&action=edit&redlink=1" class="new" title="PHP (такой сторінкы нїт)">PHP</a>, <a href="/w/index.php?title=D_(%D0%AF%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F)&action=edit&redlink=1" class="new" title="D (Язык проґрамованя) (такой сторінкы нїт)">D</a>, <a href="/w/index.php?title=Aikido_(%D0%AF%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F)&action=edit&redlink=1" class="new" title="Aikido (Язык проґрамованя) (такой сторінкы нїт)">Aikido</a>, <a href="/w/index.php?title=Dao_(%D0%AF%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F)&action=edit&redlink=1" class="new" title="Dao (Язык проґрамованя) (такой сторінкы нїт)">Dao</a>, <a href="/w/index.php?title=Rust_(%D1%8F%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F)&action=edit&redlink=1" class="new" title="Rust (язык проґрамованя) (такой сторінкы нїт)">Rust</a></td></tr><tr class=""><th style="text-align:left;"><a href="/w/index.php?title=%D0%92%D0%B5%D0%B1%D1%81%D0%B0%D0%B9%D1%82&action=edit&redlink=1" class="new" title="Вебсайт (такой сторінкы нїт)">Вебсайт</a></th><td class="" style=""><a rel="nofollow" class="external autonumber" href="https://isocpp.org/">[1]</a></td></tr> </tbody></table> <p><b> C++</b> (читатся ги <i><b>сі-плус-плус</b></i><sup id="cite_ref-1" class="reference"><a href="#cite_note-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup> даколи ся скорочує до <b>CPP</b>) — у основному <a href="/w/index.php?title=%D0%9A%D0%BE%D0%BC%D0%BF%D1%96%D0%BB%D0%BE%D0%B2%D0%B0%D0%BD%D1%8B%D0%B9_%D1%8F%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F&action=edit&redlink=1" class="new" title="Компілованый язык проґрамованя (такой сторінкы нїт)">компілованый</a>, <a href="/w/index.php?title=%D0%A1%D1%82%D0%B0%D1%82%D1%96%D1%87%D0%BD%D0%B0_%D1%82%D1%96%D0%BF%D1%96%D0%B7%D0%B0%D1%86%D0%B8%D1%8F&action=edit&redlink=1" class="new" title="Статічна тіпізация (такой сторінкы нїт)">статічно тіпізованый</a>, <a href="/w/index.php?title=%D0%A6%D1%8B_%D1%81%D0%B0%D0%BC%D0%B0%D1%80%D0%B0%D0%B2%D1%83%D1%87%D1%96_%D1%8F%D0%B7%D1%8B%D0%BA%D1%8B_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F&action=edit&redlink=1" class="new" title="Цы самаравучі языкы проґрамованя (такой сторінкы нїт)">C самаравучый</a>, <a href="/wiki/%D0%AF%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F" title="Язык проґрамованя">язык проґрамованя</a> <a href="/w/index.php?title=%D0%AF%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F_%D0%BE%D0%B1%D0%BE%D0%B1%D1%89%D0%B5%D0%BD%D0%BE%D0%B3%D0%BE_%D0%BF%D1%80%D0%B8%D0%B7%D0%BD%D0%B0%D1%87%D1%96%D0%BD%D1%8F&action=edit&redlink=1" class="new" title="Язык проґрамованя обобщеного призначіня (такой сторінкы нїт)">сполочного</a> <a href="/w/index.php?title=%D0%AF%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F_%D1%81%D0%BF%D0%BE%D0%BB%D0%BE%D1%87%D0%BD%D0%BE%D0%B3%D0%BE_%D0%BF%D1%80%D0%B8%D0%B7%D0%BD%D0%B0%D1%87%D1%96%D0%BD%D1%8F&action=edit&redlink=1" class="new" title="Язык проґрамованя сполочного призначіня (такой сторінкы нїт)">призначіня</a>, <a href="/w/index.php?title=%D0%92%D1%8B%D1%81%D0%BE%D0%BA%D0%BE%D1%80%D1%83%D0%BD%D1%91%D0%B2%D1%96_%D1%8F%D0%B7%D1%8B%D0%BA%D1%8B_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F&action=edit&redlink=1" class="new" title="Высокорунёві языкы проґрамованя (такой сторінкы нїт)">высокого руня</a>, зотвореный <a href="/w/index.php?title=%D0%94%D0%B0%D0%BD%D1%8B&action=edit&redlink=1" class="new" title="Даны (такой сторінкы нїт)">данськым</a> компютерным ученым <a href="/w/index.php?title=%D0%91%D1%8F%D1%80%D0%B5%D0%BD_%D0%A1%D1%82%D1%80%D0%B0%D1%81%D1%82%D1%80%D1%83%D0%BF&action=edit&redlink=1" class="new" title="Бярен Страструп (такой сторінкы нїт)">Бяреном Страструпом</a>, якый зачав го робити в <a href="/w/index.php?title=AT%26T&action=edit&redlink=1" class="new" title="AT&T (такой сторінкы нїт)">AT&T</a> <a href="/w/index.php?title=Bell_Laboratories&action=edit&redlink=1" class="new" title="Bell Laboratories (такой сторінкы нїт)">Bell Laboratories</a> (<a href="/w/index.php?title=%D0%9C%D1%83%D1%80%D1%80%D0%B5%D0%B9-%D0%93%D1%96%D0%BB%D0%BB,_%D0%9D%D1%8E-%D0%94%D0%B6%D0%B5%D1%80%D0%B7%D1%96&action=edit&redlink=1" class="new" title="Муррей-Гілл, Ню-Джерзі (такой сторінкы нїт)">Муррей-Гілл, Ню-Джерзі</a>) у <a href="/wiki/1979" title="1979">1979 годови</a>. Выпусшеный у <a href="/wiki/1985" title="1985">1985 годови</a> як розширіня для <a href="/w/index.php?title=%D0%A1_(%D1%8F%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F)&action=edit&redlink=1" class="new" title="С (язык проґрамованя) (такой сторінкы нїт)">языка проґрамованя С</a>, головнов го ідеёв было додати <a href="/wiki/%D0%9E%D0%B1%D1%94%D0%BA%D1%82%D0%BE%D0%B2%D0%BE_%D0%BE%D1%80%D1%8C%D1%94%D0%BD%D1%82%D0%BE%D0%B2%D0%B0%D0%BD%D0%B5_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F" title="Обєктово орьєнтоване проґрамованя">обєктно-орьєнтовані</a> можности у <a href="/w/index.php?title=%D0%A1_(%D1%8F%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F)&action=edit&redlink=1" class="new" title="С (язык проґрамованя) (такой сторінкы нїт)">Цы</a>, позад чого мав імня «<b>C with classes</b>»(«<a href="/wiki/%D0%A0%D1%83%D1%81%D0%B8%D0%BD%D1%8C%D1%81%D0%BA%D1%8B%D0%B9_%D1%8F%D0%B7%D1%8B%D0%BA" title="Русиньскый язык">русин.</a> <b>Сі із класами</b>»), із тых часу язык ся дуже розвойив. Із <a href="/wiki/1997" title="1997">1997</a>, C++ має <a href="/wiki/%D0%9E%D0%B1%D1%94%D0%BA%D1%82%D0%BE%D0%B2%D0%BE_%D0%BE%D1%80%D1%8C%D1%94%D0%BD%D1%82%D0%BE%D0%B2%D0%B0%D0%BD%D0%B5_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F" title="Обєктово орьєнтоване проґрамованя">обєктно-орьєнтовані</a>, сполочні тай функціоналні функції, із вирьху д можности убробкы на <a href="/w/index.php?title=%D0%9D%D0%B8%D0%B7%D1%8C%D0%BA%D0%BE%D1%80%D1%83%D0%BD%D1%91%D0%B2%D1%96_%D1%8F%D0%B7%D1%8B%D0%BA%D1%8B_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F&action=edit&redlink=1" class="new" title="Низькорунёві языкы проґрамованя (такой сторінкы нїт)">низькому рунёви</a> <a href="/w/index.php?title=%D0%9A%D0%BE%D0%BC%D0%BF%D1%8E%D1%82%D0%B5%D1%80%D0%BD%D0%B0_%D1%82%D1%8F%D0%BC%D0%B0&action=edit&redlink=1" class="new" title="Компютерна тяма (такой сторінкы нїт)">тямы</a> для такых сістем, ги <a href="/w/index.php?title=%D0%9C%D1%96%D0%BA%D1%80%D0%BE%D0%BA%D0%BE%D0%BC%D0%BF%D1%8E%D1%82%D0%B5%D1%80&action=edit&redlink=1" class="new" title="Мікрокомпютер (такой сторінкы нїт)">мікрокомпютеры</a>, авадь для зотворіня <a href="/wiki/%D0%9E%D0%BF%D0%B5%D1%80%D0%B0%D1%87%D0%BD%D0%B0_%D1%81%D1%96%D1%81%D1%82%D0%B5%D0%BC%D0%B0" title="Операчна сістема">оперчных сістем</a>, наприклад хосновався у <a href="/wiki/Microsoft_Windows" title="Microsoft Windows">Windows</a> і <a href="/w/index.php?title=Linux&action=edit&redlink=1" class="new" title="Linux (такой сторінкы нїт)">Linux</a>. <a href="/w/index.php?title=%D0%9A%D0%BE%D0%BC%D0%BF%D1%96%D0%BB%D0%B0%D1%82%D0%BE%D1%80%D1%8B_C%2B%2B&action=edit&redlink=1" class="new" title="Компілаторы C++ (такой сторінкы нїт)">компілаторы C++</a> надавут: <a href="/w/index.php?title=Free_Software_Foundation&action=edit&redlink=1" class="new" title="Free Software Foundation (такой сторінкы нїт)">Free Software Foundation</a>, <a href="/w/index.php?title=LLVM&action=edit&redlink=1" class="new" title="LLVM (такой сторінкы нїт)">LLVM</a>, <a href="/wiki/Microsoft_Corporation" title="Microsoft Corporation">Microsoft</a>, <a href="/w/index.php?title=Intel&action=edit&redlink=1" class="new" title="Intel (такой сторінкы нїт)">Intel</a>, <a href="/w/index.php?title=Embarcadero&action=edit&redlink=1" class="new" title="Embarcadero (такой сторінкы нїт)">Embarcadero</a>, <a href="/w/index.php?title=Oracle&action=edit&redlink=1" class="new" title="Oracle (такой сторінкы нїт)">Oracle</a> тай <a href="/w/index.php?title=IBM&action=edit&redlink=1" class="new" title="IBM (такой сторінкы нїт)">IBM</a><sup id="cite_ref-stroustruptcpppl_2-0" class="reference"><a href="#cite_note-stroustruptcpppl-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup>. У перве описаный у миженародному штандарті <a href="/w/index.php?title=%D0%9C%D0%B8%D0%B6%D0%B5%D0%BD%D0%B0%D1%80%D0%BE%D0%B4%D0%BD%D0%B0_%D0%BE%D1%80%D2%91%D0%B0%D0%BD%D1%96%D0%B7%D0%B0%D1%86%D0%B8%D1%8F_%D0%BF%D0%BE_%D1%88%D1%82%D0%B0%D0%BD%D0%B4%D0%B0%D1%80%D1%82%D1%96%D0%B7%D0%B0%D1%86%D0%B8%D1%97&action=edit&redlink=1" class="new" title="Миженародна орґанізация по штандартізациї (такой сторінкы нїт)">ISO</a>/<a href="/w/index.php?title=%D0%9C%D0%B8%D0%B6%D0%B5%D0%BD%D0%B0%D1%80%D0%BE%D0%B4%D0%BD%D0%B0_%D0%B5%D0%BB%D0%B5%D0%BA%D1%82%D1%80%D0%BE%D1%82%D0%B5%D1%85%D0%BD%D1%96%D1%87%D0%BD%D0%B0_%D0%BA%D0%BE%D0%BC%D1%96%D1%81%D1%96%D1%8F&action=edit&redlink=1" class="new" title="Миженародна електротехнічна комісія (такой сторінкы нїт)">IEC</a> 14882:1998 (<a href="/w/index.php?title=C%2B%2B98&action=edit&redlink=1" class="new" title="C++98 (такой сторінкы нїт)">C++98</a>), удтудь выходили сякі верзії: <a href="/wiki/C%2B%2B03" title="C++03">C++03</a>, <a href="/w/index.php?title=C%2B%2B11&action=edit&redlink=1" class="new" title="C++11 (такой сторінкы нїт)">C++11</a>, <a href="/w/index.php?title=C%2B%2B14&action=edit&redlink=1" class="new" title="C++14 (такой сторінкы нїт)">C++14</a>, <a href="/w/index.php?title=C%2B%2B17&action=edit&redlink=1" class="new" title="C++17 (такой сторінкы нїт)">C++17</a>, <a href="/w/index.php?title=C%2B%2B20&action=edit&redlink=1" class="new" title="C++20 (такой сторінкы нїт)">C++20</a>, <a href="/w/index.php?title=C%2B%2B23&action=edit&redlink=1" class="new" title="C++23 (такой сторінкы нїт)">C++23</a>. Май актулным штандартом же є <a href="/w/index.php?title=%D0%9C%D0%B8%D0%B6%D0%B5%D0%BD%D0%B0%D1%80%D0%BE%D0%B4%D0%BD%D0%B0_%D0%BE%D1%80%D2%91%D0%B0%D0%BD%D1%96%D0%B7%D0%B0%D1%86%D0%B8%D1%8F_%D0%BF%D0%BE_%D1%88%D1%82%D0%B0%D0%BD%D0%B4%D0%B0%D1%80%D1%82%D1%96%D0%B7%D0%B0%D1%86%D0%B8%D1%97&action=edit&redlink=1" class="new" title="Миженародна орґанізация по штандартізациї (такой сторінкы нїт)">ISO</a>/<a href="/w/index.php?title=%D0%9C%D0%B8%D0%B6%D0%B5%D0%BD%D0%B0%D1%80%D0%BE%D0%B4%D0%BD%D0%B0_%D0%B5%D0%BB%D0%B5%D0%BA%D1%82%D1%80%D0%BE%D1%82%D0%B5%D1%85%D0%BD%D1%96%D1%87%D0%BD%D0%B0_%D0%BA%D0%BE%D0%BC%D1%96%D1%81%D1%96%D1%8F&action=edit&redlink=1" class="new" title="Миженародна електротехнічна комісія (такой сторінкы нїт)">IEC</a> 14882:2024 (<a href="/w/index.php?title=C%2B%2B23&action=edit&redlink=1" class="new" title="C++23 (такой сторінкы нїт)">C++23</a>)<sup id="cite_ref-3" class="reference"><a href="#cite_note-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup>. </p><p>Пудпорює такі <a href="/w/index.php?title=%D0%9F%D0%B0%D1%80%D0%B0%D0%B4%D1%96%D2%91%D0%BC%D0%B0_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F&action=edit&redlink=1" class="new" title="Парадіґма проґрамованя (такой сторінкы нїт)">парадіґмы проґрамованя</a>, ги <a href="/w/index.php?title=%D0%9F%D1%80%D0%BE%D1%86%D0%B5%D0%B4%D1%83%D1%80%D0%BD%D0%B5_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F&action=edit&redlink=1" class="new" title="Процедурне проґрамованя (такой сторінкы нїт)">процедурне проґрамованя</a>, <a href="/wiki/%D0%9E%D0%B1%D1%94%D0%BA%D1%82%D0%BE%D0%B2%D0%BE_%D0%BE%D1%80%D1%8C%D1%94%D0%BD%D1%82%D0%BE%D0%B2%D0%B0%D0%BD%D0%B5_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F" title="Обєктово орьєнтоване проґрамованя">обєктово-орьєнтоване проґрамованя</a>, тай <a href="/w/index.php?title=%D0%A1%D0%BF%D0%BE%D0%BB%D0%BE%D1%87%D0%BD%D0%B5_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F&action=edit&redlink=1" class="new" title="Сполочне проґрамованя (такой сторінкы нїт)">сполочне проґрамованя</a>. Язык має грубу штандартову бібіліотеку, котора включат у ся поширині контейнеры і <a href="/wiki/%D0%90%D0%BB%D2%91%D0%BE%D1%80%D1%96%D1%82%D0%BC" title="Алґорітм">алґорітмы</a>, увожіня-вывожіня, реґуларні выражіня, пудпору <a href="/w/index.php?title=%D0%9C%D0%BD%D0%BE%D0%B3%D0%BE%D0%BF%D0%BE%D1%82%D0%BE%D1%87%D0%BD%D0%BE%D1%81%D1%82%D1%8C&action=edit&redlink=1" class="new" title="Многопоточность (такой сторінкы нїт)">многопоточности</a> і другі можности. C++ має у собі особинности як <a href="/w/index.php?title=%D0%92%D1%8B%D1%81%D0%BE%D0%BA%D0%BE%D1%80%D1%83%D0%BD%D1%91%D0%B2%D1%8B%D0%B9_%D1%8F%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F&action=edit&redlink=1" class="new" title="Высокорунёвый язык проґрамованя (такой сторінкы нїт)">высокорунёвых</a>, та пак і <a href="/w/index.php?title=%D0%9D%D0%B8%D0%B7%D1%8C%D0%BA%D0%BE%D1%80%D1%83%D0%BD%D1%91%D0%B2%D1%8B%D0%B9_%D1%8F%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F&action=edit&redlink=1" class="new" title="Низькорунёвый язык прґрамованя (такой сторінкы нїт)">низькорунёвых языку</a><sup id="cite_ref-FOOTNOTEШилдт1998_4-0" class="reference"><a href="#cite_note-FOOTNOTEШилдт1998-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-FOOTNOTEСтрауструп19992.1._Что_такое_C++?_5-0" class="reference"><a href="#cite_note-FOOTNOTEСтрауструп19992.1._Что_такое_C++?-5"><span class="cite-bracket">[</span>5<span class="cite-bracket">]</span></a></sup>. Руняно із ёго попередником — языком <a href="/w/index.php?title=C_(%D1%8F%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F)&action=edit&redlink=1" class="new" title="C (язык проґрамованя) (такой сторінкы нїт)">C</a> — має май грубу увагу ід пудпорі <a href="/wiki/%D0%9E%D0%B1%D1%94%D0%BA%D1%82%D0%BE%D0%B2%D0%BE_%D0%BE%D1%80%D1%8C%D1%94%D0%BD%D1%82%D0%BE%D0%B2%D0%B0%D0%BD%D0%B5_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F" title="Обєктово орьєнтоване проґрамованя">обєктово-орьєнтованого</a> і <a href="/w/index.php?title=%D0%A1%D0%BF%D0%BE%D0%BB%D0%BE%D1%87%D0%BD%D0%B5_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F&action=edit&redlink=1" class="new" title="Сполочне проґрамованя (такой сторінкы нїт)">сполочного проґрамованя</a><sup id="cite_ref-FOOTNOTEСтрауструп1999_6-0" class="reference"><a href="#cite_note-FOOTNOTEСтрауструп1999-6"><span class="cite-bracket">[</span>6<span class="cite-bracket">]</span></a></sup>. </p><p>C++ Широко хоснуєся для розробкы <a href="/w/index.php?title=%D0%9F%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BD%D0%B5_%D0%B7%D0%B0%D1%81%D0%BE%D0%B1%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F&action=edit&redlink=1" class="new" title="Проґрамне засобованя (такой сторінкы нїт)">проґрамного засобованя</a>, є єдным із май популарных коду проґрамованя, по убзвідам <a href="/wiki/2015" title="2015">2015 года</a>, кулькость проґрамісту Сі++ є около 4,4 міліона<sup id="cite_ref-7" class="reference"><a href="#cite_note-7"><span class="cite-bracket">[</span>7<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-8" class="reference"><a href="#cite_note-8"><span class="cite-bracket">[</span>8<span class="cite-bracket">]</span></a></sup>. Область ёго хоснованя включат зотворіня <a href="/wiki/%D0%9E%D0%BF%D0%B5%D1%80%D0%B0%D1%87%D0%BD%D0%B0_%D1%81%D1%96%D1%81%D1%82%D0%B5%D0%BC%D0%B0" title="Операчна сістема">операчных сістем</a>, усякых <a href="/w/index.php?title=%D0%9F%D1%80%D0%B8%D0%BA%D0%BB%D0%B0%D0%B4%D0%BD%D0%B0_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%B0&action=edit&redlink=1" class="new" title="Прикладна проґрама (такой сторінкы нїт)">прикладных проґрам</a>, <a href="/wiki/%D0%94%D1%80%D0%B0%D0%B9%D0%B2%D0%B5%D1%80" title="Драйвер">драйверу</a>, аплікацій для вбудованых сістем, высокопродуківных <a href="/w/index.php?title=%D0%A1%D0%B5%D1%80%D0%B2%D0%B5%D1%80&action=edit&redlink=1" class="new" title="Сервер (такой сторінкы нїт)">серверу</a>, ай тоже <a href="/wiki/%D0%9A%D0%BE%D0%BC%D0%BF%D1%8E%D1%82%D0%B5%D1%80%D0%BD%D0%B0_%D0%B1%D0%B0%D0%B2%D0%BA%D0%B0" title="Компютерна бавка">компютерных бавок</a>. Існує много реалізацій языка C++, як і дарьмовых, так і комерційных і для рузных платформ. Наприклад, для платформый <a href="/w/index.php?title=X86&action=edit&redlink=1" class="new" title="X86 (такой сторінкы нїт)">x86</a> то є <a href="/w/index.php?title=GNU_Compiler_Collection&action=edit&redlink=1" class="new" title="GNU Compiler Collection (такой сторінкы нїт)">GCC</a>, <a href="/w/index.php?title=Clang&action=edit&redlink=1" class="new" title="Clang (такой сторінкы нїт)">Clang</a>, <a href="/w/index.php?title=Microsoft_Visual_C%2B%2B&action=edit&redlink=1" class="new" title="Microsoft Visual C++ (такой сторінкы нїт)">Visual C++</a>, <a href="/w/index.php?title=Intel_C%2B%2B_Compiler&action=edit&redlink=1" class="new" title="Intel C++ Compiler (такой сторінкы нїт)">Intel C++ Compiler</a>, <a href="/w/index.php?title=C%2B%2B_Builder&action=edit&redlink=1" class="new" title="C++ Builder (такой сторінкы нїт)">Embarcadero (Borland) C++ Builder</a> тай инакі. C++ мав грубиньськый уплыв на другі языкы проґрамованя, ай май силно на <a href="/w/index.php?title=Java&action=edit&redlink=1" class="new" title="Java (такой сторінкы нїт)">Java</a>, <a href="/w/index.php?title=C&action=edit&redlink=1" class="new" title="C (такой сторінкы нїт)">C#</a> і <a href="/w/index.php?title=Rust_(%D1%8F%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F)&action=edit&redlink=1" class="new" title="Rust (язык прґрамованя) (такой сторінкы нїт)">Rust</a>. </p><p>Сінтаксіс C++ унаслідуєся уд языка <a href="/w/index.php?title=%D0%A1_(%D1%8F%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F)&action=edit&redlink=1" class="new" title="С (язык проґрамованя) (такой сторінкы нїт)">С</a>. На зачинанёви єдным із прінціпу розробкы было усокочіня сполочливости із С. айбо, при тум, C++ не є у строгому сенсови надмножинов С: кулькость проґрам, которі можут єдинако успішно трансловатися як і <a href="/w/index.php?title=%D0%9A%D0%BE%D0%BC%D0%BF%D1%96%D0%BB%D0%B0%D1%82%D0%BE%D1%80&action=edit&redlink=1" class="new" title="Компілатор (такой сторінкы нїт)">компілаторами</a> Сі, так і компілаторами C++, доста велика, но не включає усякі можливі проґрамы на С. </p><p>Недивлячися на широкє принятя языка, ёго крітіковали такі доста знатні проґрамісты гий <a href="/w/index.php?title=%D0%9B%D1%96%D0%BD%D1%83%D1%81_%D0%A1%D1%82%D0%BE%D1%80%D0%B2%D0%B0%D0%BB%D0%B4%D1%81&action=edit&redlink=1" class="new" title="Лінус Сторвалдс (такой сторінкы нїт)">Лінус Сторвалдс</a>, <a href="/w/index.php?title=%D0%A0%D1%96%D1%87%D0%B0%D1%80%D0%B4_%D0%A1%D1%82%D0%B0%D0%BB%D0%BB%D0%BC%D0%B0%D0%BD&action=edit&redlink=1" class="new" title="Річард Сталлман (такой сторінкы нїт)">Річард Сталлман</a>, <a href="/w/index.php?title=%D0%94%D0%B6%D0%BE%D1%88%D1%83%D0%B0_%D0%91%D0%BB%D0%BE%D1%85&action=edit&redlink=1" class="new" title="Джошуа Блох (такой сторінкы нїт)">Джошуа Блох</a>, <a href="/w/index.php?title=%D0%9A%D0%B5%D0%BD_%D0%A2%D0%BE%D0%BC%D0%BF%D1%81%D0%BE%D0%BD&action=edit&redlink=1" class="new" title="Кен Томпсон (такой сторінкы нїт)">Кен Томпсон</a> тай <a href="/w/index.php?title=%D0%94%D0%BE%D0%BD%D0%B0%D0%BB%D0%B4_%D0%9A%D0%BD%D0%BE%D1%82&action=edit&redlink=1" class="new" title="Доналд Кнот (такой сторінкы нїт)">Доналд Кнот</a>. </p> <meta property="mw:PageProp/toc" /> <div class="mw-heading mw-heading2"><h2 id="Історія"><span id=".D0.86.D1.81.D1.82.D0.BE.D1.80.D1.96.D1.8F"></span>Історія</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=1" title="Едітовати секцію: Історія" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=1" title="Редагувати вихідний код розділу: Історія"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <table class="wikitable" align="right"> <tbody><tr> <th>історичный етап розвоя<sup id="cite_ref-9" class="reference"><a href="#cite_note-9"><span class="cite-bracket">[</span>9<span class="cite-bracket">]</span></a></sup> </th> <th>Гуд </th></tr> <tr> <td>Язык <a href="/w/index.php?title=BCPL&action=edit&redlink=1" class="new" title="BCPL (такой сторінкы нїт)">BCPL</a> </td> <td><a href="/wiki/1966" title="1966">1966</a> </td></tr> <tr> <td>Язык <a href="/w/index.php?title=%D0%91%D1%8B_(%D1%8F%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F)&action=edit&redlink=1" class="new" title="Бы (язык прґрамованя) (такой сторінкы нїт)">Бы</a> (оріґінална розробка <a href="/w/index.php?title=%D0%A2%D0%BE%D0%BC%D0%BF%D1%81%D0%BE%D0%BD,_%D0%9A%D0%B5%D0%BD&action=edit&redlink=1" class="new" title="Томпсон, Кен (такой сторінкы нїт)">Томпсона</a> пуд <a href="/w/index.php?title=UNIX&action=edit&redlink=1" class="new" title="UNIX (такой сторінкы нїт)">UNIX</a>) </td> <td><a href="/wiki/1969" title="1969">1969</a> </td></tr> <tr> <td>Язык <a href="/w/index.php?title=%D0%A1_(%D1%8F%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F)&action=edit&redlink=1" class="new" title="С (язык проґрамованя) (такой сторінкы нїт)">Сі</a> </td> <td><a href="/wiki/1972" title="1972">1972</a> </td></tr> <tr> <td>«Сі із класами» </td> <td><a href="/wiki/1980" title="1980">1980</a> </td></tr> <tr> <td>C84 </td> <td><a href="/wiki/1984" title="1984">1984</a> </td></tr> <tr> <td><a href="/w/index.php?title=Cfront&action=edit&redlink=1" class="new" title="Cfront (такой сторінкы нїт)">Cfront</a> (выпуск E) </td> <td><a href="/wiki/1984" title="1984">1984</a> </td></tr> <tr> <td>Cfront (выпуск 1.0) </td> <td><a href="/wiki/1985" title="1985">1985</a> </td></tr> <tr> <td>Множинне/віртуалне наслідованя </td> <td><a href="/wiki/1988" title="1988">1988</a> </td></tr> <tr> <td>Убобщене проґрамованя (<a href="/w/index.php?title=%D0%A8%D0%B0%D0%B1%D0%BB%D0%BE%D0%BD%D1%8B_%D0%A1%2B%2B&action=edit&redlink=1" class="new" title="Шаблоны С++ (такой сторінкы нїт)">шаблоны</a>) </td> <td><a href="/wiki/1991" title="1991">1991</a> </td></tr> <tr> <td>ANSI C++ / ISO-C++ </td> <td><a href="/wiki/1996" title="1996">1996</a> </td></tr> <tr> <td><a href="/w/index.php?title=%D0%9C%D0%B8%D0%B6%D0%B5%D0%BD%D0%B0%D1%80%D0%BE%D0%B4%D0%BD%D0%B0_%D0%BE%D1%80%D2%91%D0%B0%D0%BD%D1%96%D0%B7%D0%B0%D1%86%D0%B8%D1%8F_%D0%BF%D0%BE_%D1%88%D1%82%D0%B0%D0%BD%D0%B4%D0%B0%D1%80%D1%82%D1%96%D0%B7%D0%B0%D1%86%D0%B8%D1%97&action=edit&redlink=1" class="new" title="Миженародна орґанізация по штандартізациї (такой сторінкы нїт)">ISO</a>/<a href="/w/index.php?title=%D0%9C%D0%B8%D0%B6%D0%B5%D0%BD%D0%B0%D1%80%D0%BE%D0%B4%D0%BD%D0%B0_%D0%B5%D0%BB%D0%B5%D0%BA%D1%82%D1%80%D0%BE%D1%82%D0%B5%D1%85%D0%BD%D1%96%D1%87%D0%BD%D0%B0_%D0%BA%D0%BE%D0%BC%D1%96%D1%81%D1%96%D1%8F&action=edit&redlink=1" class="new" title="Миженародна електротехнічна комісія (такой сторінкы нїт)">IEC</a> 14882:1998 </td> <td><a href="/wiki/1998" title="1998">1998</a> </td></tr> <tr> <td><a href="/w/index.php?title=%D0%9C%D0%B8%D0%B6%D0%B5%D0%BD%D0%B0%D1%80%D0%BE%D0%B4%D0%BD%D0%B0_%D0%BE%D1%80%D2%91%D0%B0%D0%BD%D1%96%D0%B7%D0%B0%D1%86%D0%B8%D1%8F_%D0%BF%D0%BE_%D1%88%D1%82%D0%B0%D0%BD%D0%B4%D0%B0%D1%80%D1%82%D1%96%D0%B7%D0%B0%D1%86%D0%B8%D1%97&action=edit&redlink=1" class="new" title="Миженародна орґанізация по штандартізациї (такой сторінкы нїт)">ISO</a>/<a href="/w/index.php?title=%D0%9C%D0%B8%D0%B6%D0%B5%D0%BD%D0%B0%D1%80%D0%BE%D0%B4%D0%BD%D0%B0_%D0%B5%D0%BB%D0%B5%D0%BA%D1%82%D1%80%D0%BE%D1%82%D0%B5%D1%85%D0%BD%D1%96%D1%87%D0%BD%D0%B0_%D0%BA%D0%BE%D0%BC%D1%96%D1%81%D1%96%D1%8F&action=edit&redlink=1" class="new" title="Миженародна електротехнічна комісія (такой сторінкы нїт)">IEC</a> 14882:2003 </td> <td><a href="/wiki/2003" title="2003">2003</a> </td></tr> <tr> <td><a href="/w/index.php?title=C%2B%2B/CLI&action=edit&redlink=1" class="new" title="C++/CLI (такой сторінкы нїт)">C++/CLI</a> </td> <td><a href="/wiki/2005" title="2005">2005</a> </td></tr> <tr> <td><a href="/w/index.php?title=TR1&action=edit&redlink=1" class="new" title="TR1 (такой сторінкы нїт)">TR1</a> </td> <td><a href="/wiki/2005" title="2005">2005</a> </td></tr> <tr> <td><a href="/w/index.php?title=C%2B%2B11&action=edit&redlink=1" class="new" title="C++11 (такой сторінкы нїт)">C++11</a> </td> <td><a href="/wiki/2011" title="2011">2011</a> </td></tr> <tr> <td><a href="/w/index.php?title=C%2B%2B14&action=edit&redlink=1" class="new" title="C++14 (такой сторінкы нїт)">C++14</a> </td> <td><a href="/wiki/2014" title="2014">2014</a> </td></tr> <tr> <td><a href="/w/index.php?title=C%2B%2B17&action=edit&redlink=1" class="new" title="C++17 (такой сторінкы нїт)">C++17</a> </td> <td><a href="/wiki/2017" title="2017">2017</a> </td></tr> <tr> <td><a href="/w/index.php?title=C%2B%2B20&action=edit&redlink=1" class="new" title="C++20 (такой сторінкы нїт)">C++20</a> </td> <td><a href="/wiki/2020" title="2020">2020</a> </td></tr> <tr> <td><a href="/w/index.php?title=C%2B%2B23&action=edit&redlink=1" class="new" title="C++23 (такой сторінкы нїт)">C++23</a> </td> <td><a href="/wiki/2023" title="2023">2023</a> </td></tr> <tr> <td><a href="/w/index.php?title=C%2B%2B26&action=edit&redlink=1" class="new" title="C++26 (такой сторінкы нїт)">C++26</a> </td> <td><a href="/wiki/2024" title="2024">2024</a> </td></tr></tbody></table> <div class="mw-heading mw-heading3"><h3 id="Зотворіня"><span id=".D0.97.D0.BE.D1.82.D0.B2.D0.BE.D1.80.D1.96.D0.BD.D1.8F"></span>Зотворіня</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=2" title="Едітовати секцію: Зотворіня" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=2" title="Редагувати вихідний код розділу: Зотворіня"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p><a href="/wiki/%D0%AF%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F" title="Язык проґрамованя">Язык</a> явився у зачинанёви <a href="/w/index.php?title=1980-%D1%82%D1%96_%D1%80%D0%BE%D0%BA%D1%8B&action=edit&redlink=1" class="new" title="1980-ті рокы (такой сторінкы нїт)">1980-ых году</a>, коли робутник фірмы <a href="/w/index.php?title=Bell_Laboratories&action=edit&redlink=1" class="new" title="Bell Laboratories (такой сторінкы нїт)">Bell Labs</a> <a href="/w/index.php?title=%D0%91%D1%8F%D1%80%D0%B5%D0%BD_%D0%A8%D1%82%D1%80%D0%B0%D1%83%D1%88%D1%82%D1%80%D1%83%D0%BF&action=edit&redlink=1" class="new" title="Бярен Штрауштруп (такой сторінкы нїт)">Бярен Страуструп</a> придумав ряд ізліпшинь д языкови <a href="/w/index.php?title=C_(%D0%AF%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F)&action=edit&redlink=1" class="new" title="C (Язык проґрамованя) (такой сторінкы нїт)">Сі</a> пуд свої потребности<sup id="cite_ref-FOOTNOTEСтрауструп1999_6-1" class="reference"><a href="#cite_note-FOOTNOTEСтрауструп1999-6"><span class="cite-bracket">[</span>6<span class="cite-bracket">]</span></a></sup>. Коли в кунци 1970-ых году Страуструп зачав робити в Bell Labs над задачами теорії очерідий (у проґрамі д моделованёви телефонных выклику), ун увидів, што коли ун пробовав убхосновати існовавші у тот час языкы проґрамованя, моделованя оказалися неефектівными, а убхоснованя высокоефектівных машинных языку <a href="/w/index.php?title=%D0%9A%D0%BE%D0%B4%D1%8B_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F_%D0%BD%D0%B8%D0%B7%D1%8C%D0%BA%D0%BE%D0%B3%D0%BE_%D1%80%D1%83%D0%BD%D1%8F&action=edit&redlink=1" class="new" title="Коды проґрамованя низького руня (такой сторінкы нїт)">низького руня</a>, выйшло через-чурь тяжкє. позад їх ограничиности у выражинёви кода, і потребности контроловати бульшость процесу. Сяк, язык <a href="/w/index.php?title=%D0%A1%D1%96%D0%BC%D1%83%D0%BB%D0%B0_(%D0%AF%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F)&action=edit&redlink=1" class="new" title="Сімула (Язык проґрамованя) (такой сторінкы нїт)">Сімула</a> має такі можности, котрых дуже гія было для розробкы май грубого проґрамного засобованя, айбо робит ун через-чурь помалы, а язык <a href="/w/index.php?title=BCPL&action=edit&redlink=1" class="new" title="BCPL (такой сторінкы нїт)">BCPL</a> доста быстрый, айбо дуже близькый д языкам низького руня і не пудходив для розробкы май грубого проґрамного засобованя. </p> <figure class="mw-default-size" typeof="mw:File/Thumb"><a href="https://uk.wikipedia.org/wiki/%D0%A4%D0%B0%D0%B9%D0%BB:BjarneStroustrup.jpg"><img resource="/wiki/%D0%A4%D0%B0%D0%B9%D0%BB:BjarneStroustrup.jpg" src="//upload.wikimedia.org/wikipedia/commons/thumb/d/da/BjarneStroustrup.jpg/220px-BjarneStroustrup.jpg" decoding="async" width="220" height="165" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/d/da/BjarneStroustrup.jpg/330px-BjarneStroustrup.jpg 1.5x, //upload.wikimedia.org/wikipedia/commons/d/da/BjarneStroustrup.jpg 2x" data-file-width="432" data-file-height="324" /></a><figcaption><a href="/w/index.php?title=%D0%91%D1%8F%D1%80%D0%B5%D0%BD_%D0%A1%D1%82%D1%80%D0%B0%D1%83%D1%81%D1%82%D1%80%D1%83%D0%BF&action=edit&redlink=1" class="new" title="Бярен Страуструп (такой сторінкы нїт)">Бярен Страуструп</a>, твориць C++, у свому офісови AT&T New Jersey, c. 2000</figcaption></figure> <p>Притямивши досвід своёї кандідатської дісертації, Страуструп вырішив доповнити язык C (наслідник BCPL) можностями, які были в языкови Сімула. Язык Сі, будучи базовым языком сістемы <a href="/w/index.php?title=Unix&action=edit&redlink=1" class="new" title="Unix (такой сторінкы нїт)">Unix</a>, на котруй робили компютеры Bell, є быстрым, многофункціоналным і переносимым. Страуструп добавив д нему можность роботы із класами і обєктами. На выслідках практічні задачі моделованя оказалися доступными для вырішіня як із боку часа розробкы (дякувучи хоснованёви cімуласамарных класу), так і із бока часа ублічіня (дякувучи шустрости C). У перву очерідь у C были додані класы (із <a href="/w/index.php?title=%D0%86%D0%BD%D0%BA%D0%B0%D0%BF%D1%81%D1%83%D0%BB%D1%8F%D1%86%D0%B8%D1%8F_(%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F)&action=edit&redlink=1" class="new" title="Інкапсуляция (проґрамованя) (такой сторінкы нїт)">інкапсуляціёв</a>), наслідованём класу, строга провірка тіпу, inline-функції і <a href="/w/index.php?title=%D0%90%D1%80%D2%91%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D1%8B_%D0%B7%D0%B0_%D0%BC%D0%BE%D0%B2%D1%87%D0%B0%D0%BD%D1%91%D0%BC&action=edit&redlink=1" class="new" title="Арґументы за мовчанём (такой сторінкы нїт)">арґументы за мовчанём</a>. перві верзії языка, якый іззачинаня кликався «C with classes» («Цы із класами»), стали доступными із <a href="/wiki/1980" title="1980">1980 года</a>. </p><p>Коли Страуструп розробляв «Цы із класами», ун написав проґраму <a href="/w/index.php?title=Cfront&action=edit&redlink=1" class="new" title="Cfront (такой сторінкы нїт)">cfront</a> — <a href="/w/index.php?title=%D0%A2%D1%80%D0%B0%D0%BD%D1%81%D0%BB%D0%B0%D1%82%D0%BE%D1%80&action=edit&redlink=1" class="new" title="Транслатор (такой сторінкы нїт)">транслатор</a>, якый переробляв выхудный код свого языка в выхудный код простого Цы. Сисе позволило робити над новым языком і хосновати го на практіци, хоснувучи ужек мавучу в unix-інфраштруктуру для розробкы на Цы. Новый язык нечекано для автора дустав грубу популарность помиже колеґ і скоро Страуструп ужек не муг особно пудпорёвати ёго, удповідавучи на тысячі звідань. </p><p>Ід <a href="/wiki/1983" title="1983">1983 годови</a> в язык были додані нові можности, такі ги віртуалні функції, переубтерьханя функцій і оператору, удкликаня, конштанты, хосноватильськє контролованя над кроманёванём слободнов тямов, ізліпшина перевірка тіпу і коментарі в штилі BCPL (<code>//</code>). Дуставшыйся язык ужек перестав быти просто доповненов верзіёв класічного C і быв перезваный із «<i>Цы із класами</i>» на «<i>C++</i>». Ёго первый комерційный выпуск стався у <a href="/wiki/%D0%9E%D0%BA%D1%82%D0%BE%D0%B1%D0%B5%D1%80" title="Октобер">октоброви</a> <a href="/wiki/1985" title="1985">1985 года</a>. </p><p>До зачинаня офіційної штандартізації язык розвивася по бульшости силов Страуструпа в удповідь на выжаданя проґраміштської сполочности. Функцію штандартного описаня языка додержовали написані Cтрауcтрупом печатні роботы по C++ (описаня языка, справочне веденя і так дале). І лем у <a href="/wiki/1998" title="1998">1998 годови</a> быв ратіфіцірованый миженародный штандарт языка C++: <a href="/w/index.php?title=%D0%9C%D0%B8%D0%B6%D0%B5%D0%BD%D0%B0%D1%80%D0%BE%D0%B4%D0%BD%D0%B0_%D0%BE%D1%80%D2%91%D0%B0%D0%BD%D1%96%D0%B7%D0%B0%D1%86%D0%B8%D1%8F_%D0%BF%D0%BE_%D1%88%D1%82%D0%B0%D0%BD%D0%B4%D0%B0%D1%80%D1%82%D1%96%D0%B7%D0%B0%D1%86%D0%B8%D1%97&action=edit&redlink=1" class="new" title="Миженародна орґанізация по штандартізациї (такой сторінкы нїт)">ISO</a>/<a href="/w/index.php?title=%D0%9C%D0%B8%D0%B6%D0%B5%D0%BD%D0%B0%D1%80%D0%BE%D0%B4%D0%BD%D0%B0_%D0%B5%D0%BB%D0%B5%D0%BA%D1%82%D1%80%D0%BE%D1%82%D0%B5%D1%85%D0%BD%D1%96%D1%87%D0%BD%D0%B0_%D0%BA%D0%BE%D0%BC%D1%96%D1%81%D1%96%D1%8F&action=edit&redlink=1" class="new" title="Миженародна електротехнічна комісія (такой сторінкы нїт)">IEC</a> 14882:1998 «Standard for the C++ Programming Language»; по-принятёви технічных правок штандарта в <a href="/wiki/2003" title="2003">2003 годови</a> — слідувуща верзія сего штандарта — <a href="/w/index.php?title=%D0%9C%D0%B8%D0%B6%D0%B5%D0%BD%D0%B0%D1%80%D0%BE%D0%B4%D0%BD%D0%B0_%D0%BE%D1%80%D2%91%D0%B0%D0%BD%D1%96%D0%B7%D0%B0%D1%86%D0%B8%D1%8F_%D0%BF%D0%BE_%D1%88%D1%82%D0%B0%D0%BD%D0%B4%D0%B0%D1%80%D1%82%D1%96%D0%B7%D0%B0%D1%86%D0%B8%D1%97&action=edit&redlink=1" class="new" title="Миженародна орґанізация по штандартізациї (такой сторінкы нїт)">ISO</a>/<a href="/w/index.php?title=%D0%9C%D0%B8%D0%B6%D0%B5%D0%BD%D0%B0%D1%80%D0%BE%D0%B4%D0%BD%D0%B0_%D0%B5%D0%BB%D0%B5%D0%BA%D1%82%D1%80%D0%BE%D1%82%D0%B5%D1%85%D0%BD%D1%96%D1%87%D0%BD%D0%B0_%D0%BA%D0%BE%D0%BC%D1%96%D1%81%D1%96%D1%8F&action=edit&redlink=1" class="new" title="Миженародна електротехнічна комісія (такой сторінкы нїт)">IEC</a> 14882:2003<sup id="cite_ref-10" class="reference"><a href="#cite_note-10"><span class="cite-bracket">[</span>10<span class="cite-bracket">]</span></a></sup>. </p><p>Із <a href="/wiki/%D0%AF%D0%BD%D1%83%D0%B0%D1%80" title="Януар">януара</a> <a href="/wiki/2018" title="2018">2018 года</a> Страуструп быв оголошеный лауреатом премії Чарлза Старка Дрейпера позад інженерьскої діятильности в 2018 годови «за концептуалізацію тай розробку языка проґрамованя C++».<sup id="cite_ref-11" class="reference"><a href="#cite_note-11"><span class="cite-bracket">[</span>11<span class="cite-bracket">]</span></a></sup> </p><p>У <a href="/wiki/%D0%94%D0%B5%D1%86%D0%B5%D0%BC%D0%B1%D0%B5%D1%80" title="Децембер">децемброви</a> <a href="/wiki/2022" title="2022">2022 года</a> C++ засів тритє місто в індексови TIOBE, тым же выпередив <a href="/w/index.php?title=Java&action=edit&redlink=1" class="new" title="Java (такой сторінкы нїт)">Java</a> первый раз у історії індекса. На <a href="/wiki/%D0%9D%D0%BE%D0%B2%D0%B5%D0%BC%D0%B1%D0%B5%D1%80" title="Новембер">новембер</a> <a href="/wiki/2024" title="2024">2024 года</a> язык засідає друге місто по-<a href="/w/index.php?title=Python&action=edit&redlink=1" class="new" title="Python (такой сторінкы нїт)">Python</a>, а Java — тритє.<sup id="cite_ref-12" class="reference"><a href="#cite_note-12"><span class="cite-bracket">[</span>12<span class="cite-bracket">]</span></a></sup> </p> <div class="mw-heading mw-heading3"><h3 id="Розвуй_і_штандартізація_языка"><span id=".D0.A0.D0.BE.D0.B7.D0.B2.D1.83.D0.B9_.D1.96_.D1.88.D1.82.D0.B0.D0.BD.D0.B4.D0.B0.D1.80.D1.82.D1.96.D0.B7.D0.B0.D1.86.D1.96.D1.8F_.D1.8F.D0.B7.D1.8B.D0.BA.D0.B0"></span>Розвуй і штандартізація языка</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=3" title="Едітовати секцію: Розвуй і штандартізація языка" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=3" title="Редагувати вихідний код розділу: Розвуй і штандартізація языка"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>У <a href="/wiki/1985" title="1985">1985</a> щи до выпуска офіційного штандарта, выйшло перве выданя книжкы «<a href="/w/index.php?title=%D0%AF%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F_C%2B%2B&action=edit&redlink=1" class="new" title="Язык проґрамованя C++ (такой сторінкы нїт)">Язык проґрамованя C++</a>».<sup id="cite_ref-1st-edition3_13-0" class="reference"><a href="#cite_note-1st-edition3-13"><span class="cite-bracket">[</span>13<span class="cite-bracket">]</span></a></sup> Перва комерційна реалізація выйшла в <a href="/wiki/%D0%9E%D0%BA%D1%82%D0%BE%D0%B1%D0%B5%D1%80" title="Октобер">октоброви</a> того же года.<sup id="cite_ref-14" class="reference"><a href="#cite_note-14"><span class="cite-bracket">[</span>14<span class="cite-bracket">]</span></a></sup> Ся книжка дає перве описаня языка, што было через-чурь важливо позад того што не было офіціалного штандарта. У <a href="/wiki/1989" title="1989">1989 годови</a> стався выхуд C++ верзії 2.0. Ї нові можности включали несчислинность наслідованя, абстрактні класы, статічні функції-члены, функції-конштанты і сокочині члены. У <a href="/wiki/1990" title="1990">1990 годови</a> вышло «Коментоване ділове руководство за C++», котре, у послідку стало основов штандарта. Послідні убновіня мали у собі шаблоны, выключіня, простур імен, нові способы приведіня тіпу і буловый тіп. Подля основы для сокочіня і доступа д убобщеным алґорітмам была выбрана <a href="/w/index.php?title=%D0%A8%D1%82%D0%B0%D0%BD%D0%B4%D0%B0%D1%80%D1%82%D0%BD%D0%B0_%D0%B1%D1%96%D0%B1%D0%BB%D1%96%D0%BE%D1%82%D0%B5%D0%BA%D0%B0_%D1%88%D0%B0%D0%B1%D0%BB%D0%BE%D0%BD%D1%83&action=edit&redlink=1" class="new" title="Штандартна бібліотека шаблону (такой сторінкы нїт)">Штандартна бібліотека шаблону (STL)</a>, розроблена <a href="/w/index.php?title=%D0%9E%D0%BB%D0%B5%D0%BA%D1%81%D0%B0%D0%BD%D0%B4%D1%80_%D0%A1%D1%82%D0%B5%D0%BF%D0%B0%D0%BD%D0%BE%D0%B2&action=edit&redlink=1" class="new" title="Олександр Степанов (такой сторінкы нїт)">Александром Степановым</a><sup id="cite_ref-STL_15-0" class="reference"><a href="#cite_note-STL-15"><span class="cite-bracket">[</span>15<span class="cite-bracket">]</span></a></sup> і <a href="/w/index.php?title=%D0%9C%D0%B5%D0%BD%D2%91_%D0%9B%D1%96&action=edit&redlink=1" class="new" title="Менґ Лі (такой сторінкы нїт)">Менґ Лі</a>. </p><p><a href="/w/index.php?title=%D0%A8%D1%82%D0%B0%D0%BD%D0%B4%D0%B0%D1%80%D1%82%D0%BD%D0%B0_%D0%B1%D1%96%D0%B1%D0%BB%D1%96%D0%BE%D1%82%D0%B5%D0%BA%D0%B0_C%2B%2B&action=edit&redlink=1" class="new" title="Штандартна бібліотека C++ (такой сторінкы нїт)">Штандартна бібліотека C++</a> тоже розвойилася у рокаши із ним. Первым добавлінём д штандартнуй бібліотеці C++ стали потокы увожіня-вывожіня, задающі можности для заміны традіційных функцій C <code>printf</code> і <code>scanf</code>. май пузно значным розвитём штандартної бібліотекы стало додаваня у ниї <a href="/w/index.php?title=%D0%A8%D1%82%D0%B0%D0%BD%D0%B4%D0%B0%D1%80%D1%82%D0%BD%D0%B0_%D0%B1%D1%96%D0%B1%D0%BB%D1%96%D0%BE%D1%82%D0%B5%D0%BA%D0%B0_%D1%88%D0%B0%D0%B1%D0%BB%D0%BE%D0%BD%D1%83&action=edit&redlink=1" class="new" title="Штандартна бібліотека шаблону (такой сторінкы нїт)">Штандартної бібліотекы шаблону</a>. </p> <ul><li>Офіціална штандартізація языка зачалася у <a href="/wiki/1998" title="1998">1998 годови</a>, коли быв опублікованый штандарт <a href="/w/index.php?title=%D0%9C%D0%B8%D0%B6%D0%B5%D0%BD%D0%B0%D1%80%D0%BE%D0%B4%D0%BD%D0%B0_%D0%BE%D1%80%D2%91%D0%B0%D0%BD%D1%96%D0%B7%D0%B0%D1%86%D0%B8%D1%8F_%D0%BF%D0%BE_%D1%88%D1%82%D0%B0%D0%BD%D0%B4%D0%B0%D1%80%D1%82%D1%96%D0%B7%D0%B0%D1%86%D0%B8%D1%97&action=edit&redlink=1" class="new" title="Миженародна орґанізация по штандартізациї (такой сторінкы нїт)">ISO</a>/<a href="/w/index.php?title=%D0%9C%D0%B8%D0%B6%D0%B5%D0%BD%D0%B0%D1%80%D0%BE%D0%B4%D0%BD%D0%B0_%D0%B5%D0%BB%D0%B5%D0%BA%D1%82%D1%80%D0%BE%D1%82%D0%B5%D1%85%D0%BD%D1%96%D1%87%D0%BD%D0%B0_%D0%BA%D0%BE%D0%BC%D1%96%D1%81%D1%96%D1%8F&action=edit&redlink=1" class="new" title="Миженародна електротехнічна комісія (такой сторінкы нїт)">IEC</a> 14882:1998 (знаный гий C++98)<sup id="cite_ref-16" class="reference"><a href="#cite_note-16"><span class="cite-bracket">[</span>16<span class="cite-bracket">]</span></a></sup>, розробленый комітетом по штандартізації C++ (<a href="/w/index.php?title=%D0%9C%D0%B8%D0%B6%D0%B5%D0%BD%D0%B0%D1%80%D0%BE%D0%B4%D0%BD%D0%B0_%D0%BE%D1%80%D2%91%D0%B0%D0%BD%D1%96%D0%B7%D0%B0%D1%86%D0%B8%D1%8F_%D0%BF%D0%BE_%D1%88%D1%82%D0%B0%D0%BD%D0%B4%D0%B0%D1%80%D1%82%D1%96%D0%B7%D0%B0%D1%86%D0%B8%D1%97&action=edit&redlink=1" class="new" title="Миженародна орґанізация по штандартізациї (такой сторінкы нїт)">ISO</a>/<a href="/w/index.php?title=%D0%9C%D0%B8%D0%B6%D0%B5%D0%BD%D0%B0%D1%80%D0%BE%D0%B4%D0%BD%D0%B0_%D0%B5%D0%BB%D0%B5%D0%BA%D1%82%D1%80%D0%BE%D1%82%D0%B5%D1%85%D0%BD%D1%96%D1%87%D0%BD%D0%B0_%D0%BA%D0%BE%D0%BC%D1%96%D1%81%D1%96%D1%8F&action=edit&redlink=1" class="new" title="Миженародна електротехнічна комісія (такой сторінкы нїт)">IEC</a> JTC1/SC22/WG21 working group). Штандарт C++ не описовав способу іменованя обєкту, дакотрых деталю убробкы выключных і другых можностю, ізкапчаных із деталями реалізації, што робит незовмісным обєктный код, зотвореный рузными компілаторами. Айбо для сего иншыми людьми было зотворено много штандарту для конкретных <a href="/w/index.php?title=%D0%90%D1%80%D1%85%D1%96%D1%82%D0%B5%D0%BA%D1%82%D0%B0%D1%80%D0%B0_%D0%BA%D0%BE%D0%BC%D0%BF%D1%8E%D1%82%D0%B5%D1%80%D0%B0&action=edit&redlink=1" class="new" title="Архітектара компютера (такой сторінкы нїт)">архітектур</a> тай <a href="/wiki/%D0%9E%D0%BF%D0%B5%D1%80%D0%B0%D1%87%D0%BD%D0%B0_%D1%81%D1%96%D1%81%D1%82%D0%B5%D0%BC%D0%B0" title="Операчна сістема">операчных сістем</a>.</li> <li>У <a href="/wiki/2003" title="2003">2003 годови</a> быв опублікованый штандарт C++ <a href="/w/index.php?title=%D0%9C%D0%B8%D0%B6%D0%B5%D0%BD%D0%B0%D1%80%D0%BE%D0%B4%D0%BD%D0%B0_%D0%BE%D1%80%D2%91%D0%B0%D0%BD%D1%96%D0%B7%D0%B0%D1%86%D0%B8%D1%8F_%D0%BF%D0%BE_%D1%88%D1%82%D0%B0%D0%BD%D0%B4%D0%B0%D1%80%D1%82%D1%96%D0%B7%D0%B0%D1%86%D0%B8%D1%97&action=edit&redlink=1" class="new" title="Миженародна орґанізация по штандартізациї (такой сторінкы нїт)">ISO</a>/<a href="/w/index.php?title=%D0%9C%D0%B8%D0%B6%D0%B5%D0%BD%D0%B0%D1%80%D0%BE%D0%B4%D0%BD%D0%B0_%D0%B5%D0%BB%D0%B5%D0%BA%D1%82%D1%80%D0%BE%D1%82%D0%B5%D1%85%D0%BD%D1%96%D1%87%D0%BD%D0%B0_%D0%BA%D0%BE%D0%BC%D1%96%D1%81%D1%96%D1%8F&action=edit&redlink=1" class="new" title="Миженародна електротехнічна комісія (такой сторінкы нїт)">IEC</a> 14882:2003, ди были выправлині явившіся хыбы і недоробкы попередної верзії штандарта. У <a href="/wiki/2005" title="2005">2005 годови</a> быв опублікованый звід Library Technical Report 1 (коротко іменованый TR1). Не є офіціално частёв штандарта, звід описує розшыріня штандартної бібліотекы, котрі, за думков автору, мавут быти включині у слідующу верзію штандарта. Ступінь пудпоры TR1 ізліпшуєся майже в усіх пудпорювучых компілаторах языка C++.</li> <li>Із <a href="/wiki/2009" title="2009">2009 года</a> ійшла робота по убновінёви попередного штандарта. Выхудна верзія называлася C++09, у слідувущуму годови ї переназвали на C++0x. Штандарт быв опублікованый у <a href="/wiki/2011" title="2011">2011 годови</a> тай іменованый <a href="/w/index.php?title=C%2B%2B11&action=edit&redlink=1" class="new" title="C++11 (такой сторінкы нїт)">C++11</a>. У него включині доповніня у ядрови языка і розширіня штандартної бібліотекы, в тому числови груба часть TR1.</li> <li>Слідувуща верзія штандарта, <a href="/w/index.php?title=C%2B%2B14&action=edit&redlink=1" class="new" title="C++14 (такой сторінкы нїт)">C++14</a>, выйшла в <a href="/wiki/%D0%90%D0%B2%D2%91%D1%83%D1%81%D1%82" title="Авґуст">авґустови</a> <a href="/w/index.php?title=2014_%D0%B3%D0%BE%D0%B4%D0%B0&action=edit&redlink=1" class="new" title="2014 года (такой сторінкы нїт)">2014 года</a>. Она має у собі в основному уточніня тай выправліня хыб попередної верзії.</li> <li>Штандарт <a href="/w/index.php?title=C%2B%2B17&action=edit&redlink=1" class="new" title="C++17 (такой сторінкы нїт)">C++17</a>, опублікованый у <a href="/wiki/%D0%94%D0%B5%D1%86%D0%B5%D0%BC%D0%B1%D0%B5%D1%80" title="Децембер">децемброви</a> <a href="/wiki/2017" title="2017">2017 года</a>, включив у штандартну бібліотеку паралелні верзії штандартных алґорітму і зрушив дакотрі старі тай дуже рідко хоснуйимі елементы.</li> <li>Послідня стабілна на тепирішньый момент дівуча верзія штандарта — <a href="/w/index.php?title=C%2B%2B20&action=edit&redlink=1" class="new" title="C++20 (такой сторінкы нїт)">C++20</a>. Миже всьым, ун має у собі прінціпово нове — пудпору модулю.</li> <li>Штандарт <a href="/w/index.php?title=C%2B%2B23&action=edit&redlink=1" class="new" title="C++23 (такой сторінкы нїт)">C++23</a> на даный момент актівно убговорюєся комітетом <a href="/w/index.php?title=%D0%9C%D0%B8%D0%B6%D0%B5%D0%BD%D0%B0%D1%80%D0%BE%D0%B4%D0%BD%D0%B0_%D0%BE%D1%80%D2%91%D0%B0%D0%BD%D1%96%D0%B7%D0%B0%D1%86%D0%B8%D1%8F_%D0%BF%D0%BE_%D1%88%D1%82%D0%B0%D0%BD%D0%B4%D0%B0%D1%80%D1%82%D1%96%D0%B7%D0%B0%D1%86%D0%B8%D1%97&action=edit&redlink=1" class="new" title="Миженародна орґанізация по штандартізациї (такой сторінкы нїт)">ISO</a>.</li></ul> <p>C++ дале розвойився, для того штобы удповідати тепирішным жаданям. Єдна із ґруп, розроблявучых язык C++ і направлявучых комітетови по штандартізації C++ предложила ёго ізліпшиня — то <a href="/w/index.php?title=Boost&action=edit&redlink=1" class="new" title="Boost (такой сторінкы нїт)">Boost</a>, котра заниматся, у тому числі, довершинём можностю языка путём добавліня у него особинностю <a href="/w/index.php?title=%D0%9C%D0%B5%D1%82%D0%B0%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F&action=edit&redlink=1" class="new" title="Метапроґрамованя (такой сторінкы нїт)">метапроґрамованя</a>. </p><p>Ніко не має права на язык C++, ун є слободным. Айбо сам документ штандарта языка (за выключинём чорновика) не доступный задарь. У рамках процеса штандартізації <a href="/w/index.php?title=%D0%9C%D0%B8%D0%B6%D0%B5%D0%BD%D0%B0%D1%80%D0%BE%D0%B4%D0%BD%D0%B0_%D0%BE%D1%80%D2%91%D0%B0%D0%BD%D1%96%D0%B7%D0%B0%D1%86%D0%B8%D1%8F_%D0%BF%D0%BE_%D1%88%D1%82%D0%B0%D0%BD%D0%B4%D0%B0%D1%80%D1%82%D1%96%D0%B7%D0%B0%D1%86%D0%B8%D1%97&action=edit&redlink=1" class="new" title="Миженародна орґанізация по штандартізациї (такой сторінкы нїт)">ISO</a> выпускає дакулько виду выдань. У частности, технічні звіды тай технічні характерістікы публікувутся, коли «видно будучность, но не є доразної можности на згоду для публікації миженародного штандарта.» До <a href="/wiki/2011" title="2011">2011 года</a> было опубліковано три технічні звіда по C++: TR 19768: 2007 (тоже знаный ги C++, Технічный звід 1) для розширіня бібліотекы в основному інтеґрованый у C++11, TR 29124: 2010 для спеціалных математічных функцій, і TR 24733: 2011 для десятичної арітметікы із плаваючов точков. Технічна спеціфікація DTS 18822:. 2014 (по файловуй сістемі) была утвержена в зачинанёви <a href="/wiki/2015" title="2015">2015 года</a>, і другі технічні характерістікы находятся у стадії розвоя і чекавут одобріня. </p><p>У <a href="/wiki/%D0%9C%D0%B0%D1%80%D0%B5%D1%86" title="Марец">марцови</a> <a href="/wiki/2016" title="2016">2016 года</a> в <a href="/wiki/%D0%A0%D0%BE%D1%81%D1%96%D1%8F" title="Росія">Росії</a> была зотворена робоча ґрупа <a href="/w/index.php?title=%D0%A0%D0%9321_C%2B%2B&action=edit&redlink=1" class="new" title="РГ21 C++ (такой сторінкы нїт)">РҐ21 C++</a>. ґрупа была орґанізована для збора жадань до штандарта C++, і выправліня їх у комітет і сокочіня на сполочных зборах Миженароднов орґанізаціёв по штандартізациї (<a href="/w/index.php?title=%D0%9C%D0%B8%D0%B6%D0%B5%D0%BD%D0%B0%D1%80%D0%BE%D0%B4%D0%BD%D0%B0_%D0%BE%D1%80%D2%91%D0%B0%D0%BD%D1%96%D0%B7%D0%B0%D1%86%D0%B8%D1%8F_%D0%BF%D0%BE_%D1%88%D1%82%D0%B0%D0%BD%D0%B4%D0%B0%D1%80%D1%82%D1%96%D0%B7%D0%B0%D1%86%D0%B8%D1%97&action=edit&redlink=1" class="new" title="Миженародна орґанізация по штандартізациї (такой сторінкы нїт)">ISO</a>)<sup id="cite_ref-sozd_17-0" class="reference"><a href="#cite_note-sozd-17"><span class="cite-bracket">[</span>17<span class="cite-bracket">]</span></a></sup>. </p> <div class="mw-heading mw-heading3"><h3 id="Історія_імня"><span id=".D0.86.D1.81.D1.82.D0.BE.D1.80.D1.96.D1.8F_.D1.96.D0.BC.D0.BD.D1.8F"></span>Історія імня</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=4" title="Едітовати секцію: Історія імня" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=4" title="Редагувати вихідний код розділу: Історія імня"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Імня «Цы++» было выдумане <a href="/w/index.php?title=%D0%A0%D1%96%D0%BA_%D0%9C%D0%B0%D1%81%D1%96%D1%82%D1%82%D1%96&action=edit&redlink=1" class="new" title="Рік Масітті (такой сторінкы нїт)">Ріком Масітті</a> (Rick Mascitti) і первый раз было захосноване у <a href="/wiki/%D0%94%D0%B5%D1%86%D0%B5%D0%BC%D0%B1%D0%B5%D1%80" title="Децембер">децемброви</a> <a href="/wiki/1983" title="1983">1983 года.</a> Май скоро, на етапови розробкы, новый язык назывався «Цы із класами». Імня, што выйшло у выслідкови, походит уд оператора Цы «<code>++</code>» (Ізбульшіня значіня ізмінної на єденицю) тай пошириному способови присвойиня новых імену компютерным проґрамам, што лежит у додаванёви до імня сімбола «<code>+</code>» для позначіня ізліпшинь. ведля Страуструпа, «се імня указує на еволюційну природу міняня Цы». Імнём «С+» называли скуршый, не ізкапчаным із Цы++ язык проґрамованя </p><p>Язык тож не назывався D, того що «<i>ун є розширінём C і не стараєся выправляти хыбы дорогов зрушіня елементу C</i>»<sup id="cite_ref-FOOTNOTEСтрауструп19991.4._Исторические_замечания_18-0" class="reference"><a href="#cite_note-FOOTNOTEСтрауструп19991.4._Исторические_замечания-18"><span class="cite-bracket">[</span>18<span class="cite-bracket">]</span></a></sup> </p><p>Дакотрі проґрамісты на Цы можут замітити, што якшто оконувутся выразы <code>х=3; y=x++;</code> то у выслідкови выйде <code>х=4</code> і <code>y=3</code>, того што <code>x</code> ізбульшуєся лем по <a href="/w/index.php?title=%D0%9E%D0%BF%D0%B5%D1%80%D0%B0%D1%82%D0%BE%D1%80_%D0%BF%D1%80%D0%B8%D1%81%D0%B2%D0%BE%D0%B9%D0%B8%D0%BD%D1%8F&action=edit&redlink=1" class="new" title="Оператор присвойиня (такой сторінкы нїт)">присвойиня</a> го до <code>y</code>. айбо якшто другый выраз буде <code>y=++x;</code> то выйде <code>x=4</code> і <code>y=4</code>. Выходячи із сего, мож зробити выслідок, што май лоґічно было бы называти язык не Цы++, а ++Цы. айбо оба выразы c++ і ++c ізбульшувут с, ай поза тым выраз c++ є май пошириным. </p><p>Педанты тож можут уповісти, што уведіня языка Цы++ не міняє самого Цы, того май поточным імям было бы «С+1». </p> <div class="mw-heading mw-heading3"><h3 id="Філозофія_C++"><span id=".D0.A4.D1.96.D0.BB.D0.BE.D0.B7.D0.BE.D1.84.D1.96.D1.8F_C.2B.2B"></span>Філозофія C++</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=5" title="Едітовати секцію: Філозофія C++" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=5" title="Редагувати вихідний код розділу: Філозофія C++"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>У книжци «Дізайн і еволуція C++»<sup id="cite_ref-FOOTNOTEСтрауструп,_Дизайн_и_эволюция_C++2007_19-0" class="reference"><a href="#cite_note-FOOTNOTEСтрауструп,_Дизайн_и_эволюция_C++2007-19"><span class="cite-bracket">[</span>19<span class="cite-bracket">]</span></a></sup> <a href="/w/index.php?title=%D0%91%D0%B5%D1%80%D0%B5%D0%BD_%D0%A1%D1%82%D1%80%D0%B0%D1%83%D1%81%D1%82%D1%80%D1%83%D0%BF&action=edit&redlink=1" class="new" title="Берен Страуструп (такой сторінкы нїт)">Берен Страуструп</a> описує прінціпы, котрых ун додержовався при проєктованёви C++. Сисі прінціпы обяснявут, чого C++ іменно сякый, ги ун є. Дакотрі із них: </p> <ul><li>Получити універсалный язык із штатістічными тіпами даных, эфектівностёв і переносимостёв языка C.</li> <li>Безпосередно тай всядыбоково пудпорёвати лум штилю проґрамованя, у тум числі <a href="/w/index.php?title=%D0%9F%D1%80%D0%BE%D1%86%D0%B5%D0%B4%D1%83%D1%80%D0%BD%D0%B5_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F&action=edit&redlink=1" class="new" title="Процедурне проґрамованя (такой сторінкы нїт)">процедурне проґрамованя</a>, <a href="/w/index.php?title=%D0%90%D0%B1%D1%81%D1%82%D1%80%D0%B0%D0%BA%D1%86%D1%96%D1%8E_%D0%B4%D0%B0%D0%BD%D1%8B%D1%85&action=edit&redlink=1" class="new" title="Абстракцію даных (такой сторінкы нїт)">абстракцію даных</a>, <a href="/wiki/%D0%9E%D0%B1%D1%94%D0%BA%D1%82%D0%BE%D0%B2%D0%BE_%D0%BE%D1%80%D1%8C%D1%94%D0%BD%D1%82%D0%BE%D0%B2%D0%B0%D0%BD%D0%B5_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F" title="Обєктово орьєнтоване проґрамованя">обєктово-орєнтоване проґрамованя</a> тай <a href="/w/index.php?title=%D0%A3%D0%B1%D0%BE%D0%B1%D1%89%D0%B5%D0%BD%D0%B5_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F&action=edit&redlink=1" class="new" title="Убобщене проґрамованя (такой сторінкы нїт)">убобщене проґрамованя</a>.</li> <li>Дати проґрамістови слободу выбора, даже аж се даст му можность выбирати неправильно.</li> <li>Максімално усокотити злучимость із C, тым же зробити можным легкый перехуд уд проґрамованя на C.</li> <li>Убминути рузночитаность миже C і C++: кажда конштрукція, допустима в обох языках, мусит у каждых із них означати єдно, тай ідводити д єдному повожінёви проґрамы.</li> <li>Убминути особинности, котрі залежат уд платформы авадь не сут універсалными.</li> <li>«Не платити за то, што не хоснуєся» — ніяка языкова можность не має доводити ід знижинёви продуктованя проґрам, не хоснуючых їх.</li> <li>Не требовати через-чурь убтяжине міліє проґрамованя.</li></ul> <div class="mw-heading mw-heading2"><h2 id="Убозріня_языка"><span id=".D0.A3.D0.B1.D0.BE.D0.B7.D1.80.D1.96.D0.BD.D1.8F_.D1.8F.D0.B7.D1.8B.D0.BA.D0.B0"></span>Убозріня языка</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=6" title="Едітовати секцію: Убозріня языка" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=6" title="Редагувати вихідний код розділу: Убозріня языка"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Штандарт C++ склдатся із двох основных частий: описаня ядра языка тай описаня штандартної бібліотекы. </p><p>Первый час язык розвивався поза формалных рамок, спонтанно, за міров поставшых перед ним задач. Розвоёви языка допровожовав розвуй <a href="/w/index.php?title=%D0%9A%D1%80%D0%BE%D1%81-%D0%BA%D0%BE%D0%BC%D0%BF%D1%96%D0%BB%D0%B0%D1%82%D0%BE%D1%80&action=edit&redlink=1" class="new" title="Крос-компілатор (такой сторінкы нїт)">крос-компілатора</a> <a href="/w/index.php?title=Cfront&action=edit&redlink=1" class="new" title="Cfront (такой сторінкы нїт)">cfront</a>. Оновіня у языкови выдавалися на ізміні номера верзії крос-компілатора. Си-сі нумера верзій крос-компілатора розусяжовалися і на самый язык, айбо до днисьных часу бисіду про верзію языка C++ не ведут. Лем у 1998 годови язык став штандартізованым. </p> <ul><li>C++ пудпорює як коментарі ги в штилі C (<code>/* коментарь */</code>), так і єднострокові (<code>// вся послідующа часть строкы буде коментарём</code>), ди <code>//</code> означат зачинаня коментаря, а май близькый наступный сімбол нової строкы, котрум не передує сімбол <code>\</code> (вадь еквівалентный ёму убозначиный <code>??/</code>), лічится кунцём коментаря. Плус сего коментаря у тому, што го не мусай заперати, циже убозначовати кониць коментаря.</li> <li>Спеціфікатор <code>inline</code> для функцій. Функція, дефінована в удну тіла класа, є inline за замовчінём. Даный спеціфікатор є пудказков компілаторови і може вбудовати тіло функції у код узамін ї безпосеридного выклика.</li> <li>Кваліфікаторы <code>const</code> і <code>volatile</code>. На розділ уд С, ди <code>const</code> означає лем доступ для читаня, у C++ ізмінна із кваліфікатором <code>const</code> має быти ініціалізована. <code>volatile</code> хоснуєся у описови ізмінных і інформує компілатор, што значіня даної ізмінної може быти поміняно способом, котрый компілатор не в станови для того штобы увидіти. Для ізмінных, установленых <code>volatile</code>, компілатор не мусит зачинати дії для оптімізації, мінявучі положіня ізмінної у тямі (наприклад, розміщувучи ї у реґіштрови) авадь покладавучися на непоміняность значіня ізмінної у просторі миже двома значінями які ся юй призначавут.</li> <li><a href="/w/index.php?title=%D0%9F%D1%80%D0%BE%D1%81%D1%82%D1%83%D1%80_%D1%96%D0%BC%D0%B5%D0%BD_(%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F)&action=edit&redlink=1" class="new" title="Простур імен (проґрамованя) (такой сторінкы нїт)">Простур імен</a> (<code>namespace</code>). приклад:Выбираня іменно С гий основы для зотворіня языка проґрамованя убяснявут, тым што язык C:</li></ul> <ol><li>Є многоцілёвым, лаконічным тай удносно низькорувнёвым языком;</li> <li>Пудходит для вырішіня бульшости сістемных задач;</li> <li>оконаня усюды і на всёму;</li> <li>стыкуєся із міліём проґрамованя UNIX.<div class="ts-Конец_цитаты-source">— <cite>Б. </cite><cite>Страуструп. Язык программирования C++. Раздел 1.6</cite></div></li></ol> <p>Спеціалным трафунком є безіменный простур імюн. Всі імена, описані в нему, доступні лем у поточнуй єдиниці транслації і мавут локалне скапчаня. Простур імен <code>std</code> має у собі штандартні бібліотекы C++, простур імен <a href="/w/index.php?title=Chrono&action=edit&redlink=1" class="new" title="Chrono (такой сторінкы нїт)">chrono</a> має функції для работы із єдиницями часа із с chrono. </p> <ul><li>Для роботы із тямов додані операторы <code>new</code>, <code>new[]</code>, <code>delete</code> тай <code>delete[]</code>. На розділ уд бібліотечных malloc і free, прийшовшых із C, дані операторы роблят ініціалізацію обєкта. Для класу — то є выклик конштруктора, для <a href="/w/index.php?title=%D0%9F%D1%80%D0%BE%D1%81%D1%82%D0%B0_%D1%88%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D0%B0_%D0%B4%D0%B0%D0%BD%D1%8B%D1%85&action=edit&redlink=1" class="new" title="Проста штруктура даных (такой сторінкы нїт)">POD</a>-тіпу ініціалізацію можна вадь не проводити(<code>new Pod;</code>) вадь провести ініціалізацію нуловыми значінями (<code>new Pod(); new Pod {};</code>).</li></ul> <div class="mw-heading mw-heading3"><h3 id="Тіпы"><span id=".D0.A2.D1.96.D0.BF.D1.8B"></span>Тіпы</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=7" title="Едітовати секцію: Тіпы" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=7" title="Редагувати вихідний код розділу: Тіпы"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>У C++ доступні слідувущі встановлині тіпы. тіпы C++ практічно повностю повторяют <a href="/w/index.php?title=%D0%A2%D1%96%D0%BF%D1%8B_%D0%B4%D0%B0%D0%BD%D1%8B%D1%85_%D1%83_C&action=edit&redlink=1" class="new" title="Тіпы даных у C (такой сторінкы нїт)">тіпы даных у C</a>:<sup id="cite_ref-20" class="reference"><a href="#cite_note-20"><span class="cite-bracket">[</span>20<span class="cite-bracket">]</span></a></sup> </p> <table class="wikitable"> <tbody><tr> <td rowspan="2"><b>Тіп даных</b> </td> <td><b>Вага</b> </td> <td rowspan="2"><b>Сінтаксіс</b> </td></tr> <tr> <td><b>Інформація</b> </td></tr> <tr> <td colspan="3"><b>Сімболні тіпы<sup id="cite_ref-21" class="reference"><a href="#cite_note-21"><span class="cite-bracket">[</span>21<span class="cite-bracket">]</span></a></sup></b> </td></tr> <tr> <td rowspan="2"><code><b>char</b></code> </td> <td>1 <a href="/w/index.php?title=%D0%91%D0%B0%D0%B9%D1%82&action=edit&redlink=1" class="new" title="Байт (такой сторінкы нїт)">байт</a>(8 <a href="/w/index.php?title=%D0%91%D1%96%D1%82&action=edit&redlink=1" class="new" title="Біт (такой сторінкы нїт)">біт</a>) </td> <td rowspan="2"><code>char ch1 = 'A';</code> авадь <code>char ch1 = 65;</code> што є ідентично бо сімбол «A» стойит у ASCII пуд значінём 65. </td></tr> <tr> <td>може сокотити в собі сімбол( ёго чилове значіня <a href="/w/index.php?title=ASCII&action=edit&redlink=1" class="new" title="ASCII (такой сторінкы нїт)">ASCII</a>). </td></tr> <tr> <td rowspan="2"><code><b>wchar_t</b></code> </td> <td>2 ~ 4 байт(16 ~ 32 біт) залежно уд платформы </td> <td rowspan="2"><code>wchar_t ch2 = L'Я';</code> </td></tr> <tr> <td>Хоснує взамін ASCII <a href="/w/index.php?title=UTF-16&action=edit&redlink=1" class="new" title="UTF-16 (такой сторінкы нїт)">UTF-16</a> на <a href="/w/index.php?title=Windows_%D0%BE%D0%BF%D0%B5%D1%80%D0%B0%D1%87%D0%BD%D1%96_%D1%81%D1%96%D1%81%D1%82%D0%B5%D0%BC%D1%8B&action=edit&redlink=1" class="new" title="Windows операчні сістемы (такой сторінкы нїт)">Windows</a>, <a href="/w/index.php?title=UTF-32&action=edit&redlink=1" class="new" title="UTF-32 (такой сторінкы нїт)">UTF-32</a> на другых сістемах, на Windows ёго рекомедувут хосновати лем при роботі із <a href="/w/index.php?title=Windows_API&action=edit&redlink=1" class="new" title="Windows API (такой сторінкы нїт)">Windows API</a><sup id="cite_ref-22" class="reference"><a href="#cite_note-22"><span class="cite-bracket">[</span>22<span class="cite-bracket">]</span></a></sup>. Доданый у <a href="/w/index.php?title=%D0%A1%2B%2B11&action=edit&redlink=1" class="new" title="С++11 (такой сторінкы нїт)">С++ 11</a>. </td></tr> <tr> <td rowspan="2"><code><b>char8_t</b></code> </td> <td>1 байт(8 біт) </td> <td rowspan="2"><code>char8_t ch8 = u8'A';</code> </td></tr> <tr> <td>Тот же <code><b>char</b></code>,лем назнчиный для роботы із сімболами <a href="/w/index.php?title=UTF-8&action=edit&redlink=1" class="new" title="UTF-8 (такой сторінкы нїт)">UTF-8</a>. Має літерал <code>u8</code>.Тіп доданый у <a href="/w/index.php?title=%D0%A1%2B%2B20&action=edit&redlink=1" class="new" title="С++20 (такой сторінкы нїт)">С++20</a>. </td></tr> <tr> <td rowspan="2"><code><b>char16_t</b></code> </td> <td>2 байт(16 біт) </td> <td rowspan="2"><code>char16_t ch16 = u'あ';</code> </td></tr> <tr> <td>Зотвореный для роботы із <a href="/w/index.php?title=UTF-16&action=edit&redlink=1" class="new" title="UTF-16 (такой сторінкы нїт)">UTF-16</a>. Має літерал <code>u</code>.Тіп доданый у <a href="/w/index.php?title=%D0%A1%2B%2B11&action=edit&redlink=1" class="new" title="С++11 (такой сторінкы нїт)">С++11</a>. </td></tr> <tr> <td rowspan="2"><code><b>char32_t</b></code> </td> <td>4 байт(32 біт) </td> <td rowspan="2"><code>char32_t ch32 = U'😊';</code> </td></tr> <tr> <td>Зотвореный для роботы із <a href="/w/index.php?title=UTF-32&action=edit&redlink=1" class="new" title="UTF-32 (такой сторінкы нїт)">UTF-32</a>.Має літерал <code>U</code>.Тіп доданый у <a href="/w/index.php?title=%D0%A1%2B%2B11&action=edit&redlink=1" class="new" title="С++11 (такой сторінкы нїт)">С++11</a>. </td></tr> <tr> <td colspan="3"><b>Цілочисилні знакові<sup id="cite_ref-:1_23-0" class="reference"><a href="#cite_note-:1-23"><span class="cite-bracket">[</span>23<span class="cite-bracket">]</span></a></sup></b> </td></tr> <tr> <td rowspan="2"><b><code>short</code>(<code>short int)</code></b> </td> <td>2 байт(16 біт) </td> <td rowspan="2"><code>short si = -20000;</code> </td></tr> <tr> <td>Може сокотити у собі числові значіня уд -32 768 до 32 767. Хоснуєся для скочіня тямы. </td></tr> <tr> <td rowspan="2"><b><code>int</code></b> </td> <td>4 байт(32 біт) </td> <td rowspan="2"><code>int i = 1000000;</code> </td></tr> <tr> <td>Може сокотити у собі числові значіня уд -2 147 483 648 до 2 147 483 647. Май часто ся хоснує для роботы із цілыми числами, має оптімальный баланс миже вагов, і діапазоном значінь. </td></tr> <tr> <td rowspan="2"><code><b>long(long int)</b></code> </td> <td>4 ~ 8 байт(32 ~ 64 біт) залежно уд платформы </td> <td rowspan="2"><code>long int li = 3000000000L;</code> </td></tr> <tr> <td>Може сокотити у собі числові значіня уд -2 147 483 648 до 2 147 483 647 авадь -9 223 372 036 854 775 808 до 9 223 372 036 854 775 807. Хоснуєся для сокочіня грубых чисил. На 32-бітных сістемах у основному має то-ту же вагу што і <b><code>int</code></b>. Має літерал <code><b>L</b></code>. </td></tr> <tr> <td rowspan="2"><code><b>long long</b></code> </td> <td>8 байт(64 біт) </td> <td rowspan="2"><code>long long lli = 9000000000000000000LL;</code> </td></tr> <tr> <td>Може сокотити у собі числові значіня уд -9 223 372 036 854 775 808 до 9 223 372 036 854 775 807. Хоснуєся для сокочіня грубых чисил. Має літерал <code><b>LL</b></code>. Тіп доданый у <a href="/w/index.php?title=C%2B%2B11&action=edit&redlink=1" class="new" title="C++11 (такой сторінкы нїт)">C++11</a>. </td></tr> <tr> <td rowspan="2"><code><b>__intN</b>:</code><sup id="cite_ref-:2_24-0" class="reference"><a href="#cite_note-:2-24"><span class="cite-bracket">[</span>24<span class="cite-bracket">]</span></a></sup> </td> <td>N - число біт </td> <td rowspan="2"><code>_int8 i8 = 100;</code><sup id="cite_ref-:2_24-1" class="reference"><a href="#cite_note-:2-24"><span class="cite-bracket">[</span>24<span class="cite-bracket">]</span></a></sup> </td></tr> <tr> <td>Зотворено штобы особно вказовати число біт, наприклад: <code>_int8</code>(8 біт), <code>_int16</code>(16 біт), <code>_int32</code>(32 біт), <code>_int64</code>(64 біт), можут сокотити у собі числові значіня уд -(2<sup>n-1</sup>) до 2<sup>n-1</sup>-1<sup id="cite_ref-:0_25-0" class="reference"><a href="#cite_note-:0-25"><span class="cite-bracket">[</span>25<span class="cite-bracket">]</span></a></sup>. </td></tr> <tr> <td colspan="3"><b>Із <a href="/w/index.php?title=%D0%9F%D0%BB%D0%B0%D0%B2%D0%B0%D0%B2%D1%83%D1%87%D0%B0_%D0%BA%D1%80%D0%B0%D0%BF%D0%BA%D0%B0&action=edit&redlink=1" class="new" title="Плававуча крапка (такой сторінкы нїт)">плававучов крапков</a><sup id="cite_ref-:1_23-1" class="reference"><a href="#cite_note-:1-23"><span class="cite-bracket">[</span>23<span class="cite-bracket">]</span></a></sup></b> </td></tr> <tr> <td rowspan="2"><code><b>float</b></code> </td> <td>4 байт (32 біт) </td> <td rowspan="2"><code>float f = 3.14f;</code> </td></tr> <tr> <td>Має 6 ~ 7 дисятковых цифр, Хоснуєся для сокочіня чисил із плававучов крапков, помірнов бізуностёв, наприклад: для <a href="/wiki/%D0%9A%D0%BE%D0%BC%D0%BF%D1%8E%D1%82%D0%B5%D1%80%D0%BD%D0%B0_%D0%B1%D0%B0%D0%B2%D0%BA%D0%B0" title="Компютерна бавка">компютерных бавок</a>. Має літерал f. Діапазон уд ±1.18×10-³⁸ до ± 3.4×10³⁸. </td></tr> <tr> <td rowspan="2"><code><b>double</b></code> </td> <td>8 байт (64 біт) </td> <td rowspan="2"><code>double d = 3.141592653589793;</code> </td></tr> <tr> <td>Має 15 ~ 16 дисятковых цифр, Хоснуєся для сокочіня чисил із плававучов крапков, і сериднёв бізуностёв, май часто для роботы із <a href="/w/index.php?title=%D0%94%D1%80%D0%BE%D0%B1%D1%8B_(%D0%BC%D0%B0%D1%82%D0%B5%D0%BC%D0%B0%D1%82%D1%96%D0%BA%D0%B0)&action=edit&redlink=1" class="new" title="Дробы (математіка) (такой сторінкы нїт)">дробами</a>. Діапазон уд ±2.23×10-³º⁸ до ±1.80×10³º⁸. </td></tr> <tr> <td rowspan="2"><code><b>long double</b></code> </td> <td>10-16 байт (80 ~ 128 біт) </td> <td rowspan="2"><code>long double ld = 3.1415926535897932385L;</code> </td></tr> <tr> <td>Має 18-19 дисяткових цифр. Хоснуєся для научных убчислинь, має высоку бізуность. Діапазон ±3.36×10-⁴⁹³²-4932 до ±1.18×10⁴⁹³². </td></tr> <tr> <td colspan="3"><b>Лоґічні<sup id="cite_ref-:1_23-2" class="reference"><a href="#cite_note-:1-23"><span class="cite-bracket">[</span>23<span class="cite-bracket">]</span></a></sup></b> </td></tr> <tr> <td rowspan="2"><code><b>bool</b></code><sup id="cite_ref-26" class="reference"><a href="#cite_note-26"><span class="cite-bracket">[</span>26<span class="cite-bracket">]</span></a></sup> </td> <td>1 байт(8 біт) </td> <td rowspan="2"><code><b>bool b = true;</b></code> </td></tr> <tr> <td>Діапазон уд 0 до 1, удкликаєся на звіданя правда(<code><b>true</b></code>) вадь брехня(<code><b>false</b></code>), май часто хоснуют у if, while.<sup id="cite_ref-27" class="reference"><a href="#cite_note-27"><span class="cite-bracket">[</span>27<span class="cite-bracket">]</span></a></sup> </td></tr> <tr> <td rowspan="2"><code><b>false</b></code><sup id="cite_ref-28" class="reference"><a href="#cite_note-28"><span class="cite-bracket">[</span>28<span class="cite-bracket">]</span></a></sup> </td> <td rowspan="2">Сінонім до 0, означат бріхню, хоснуєся для <code><b>bool</b></code>. </td> <td rowspan="2"><code><b>bool f = false;</b></code> </td></tr> <tr> <td rowspan="2"><code><b>true</b></code><sup id="cite_ref-29" class="reference"><a href="#cite_note-29"><span class="cite-bracket">[</span>29<span class="cite-bracket">]</span></a></sup> </td> <td rowspan="2">Сінонім до 1, означат правду, хоснуєся для <code><b>bool</b></code>. </td> <td rowspan="2"><code><b>bool t = true;</b></code> </td></tr> <tr> <td colspan="3"><b>Цілочисилні знакові тай беззнакові(<code>signed</code> і <code>unsigned</code>)<sup id="cite_ref-:0_25-1" class="reference"><a href="#cite_note-:0-25"><span class="cite-bracket">[</span>25<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-:1_23-3" class="reference"><a href="#cite_note-:1-23"><span class="cite-bracket">[</span>23<span class="cite-bracket">]</span></a></sup></b> </td></tr> <tr> <td><b>Тіп даных</b> </td> <td><b>Інформація</b> </td> <td><b>Приклад</b> </td></tr> <tr> <td><b><code>signed</code></b> </td> <td>Знаковый тіп, якый робит діапазон ходь-якої цілочилинної ізмінної уд -(2n-1) до 2n-1-1<sup id="cite_ref-:0_25-2" class="reference"><a href="#cite_note-:0-25"><span class="cite-bracket">[</span>25<span class="cite-bracket">]</span></a></sup> ди N то кулькость біт тіпа даных. signed Є тіпом за замовчінём </td> <td>У <code>signed int</code> діапазон уд -2 147 483 648 до 2 147 483 647, а у <code>signed short</code> уд -32 768 до 32 767, так само які і без приписаня <code>signed</code>. </td></tr> <tr> <td><b><code>unsigned</code></b> </td> <td>Беззнаковый тіп, котрого якшто прикласти до цілочислных тіпу, то їх діапазон буде могти мати лем додатне значіня, уд 0 до 2n (N — вага в бітах прикледеного тіпа) </td> <td><code>unsigned long long</code> уд 0 до 18 446 744 073 709 551 615, ци <code>unsigned short</code> уд 0 до 65 535.<sup id="cite_ref-:0_25-3" class="reference"><a href="#cite_note-:0-25"><span class="cite-bracket">[</span>25<span class="cite-bracket">]</span></a></sup> </td></tr></tbody></table> <p>Язык увюг такє розуміня ги удкликаня, а із штандарта C++11 <i>— rvalue</i>-удкликаня і <a href="/w/index.php?title=%D0%9F%D0%B5%D1%80%D0%B5%D0%B0%D0%B4%D1%80%D0%B5%D1%81%D1%83%D0%B9%D0%B8%D0%BC%D1%96_%D1%83%D0%B4%D0%BA%D0%BB%D0%B8%D0%BA%D0%B0%D0%BD%D1%8F&action=edit&redlink=1" class="new" title="Переадресуйимі удкликаня (такой сторінкы нїт)">переадресуйимі удкликаня</a> (<a href="/wiki/%D0%90%D0%BD%D2%91%D0%BB%D1%96%D1%86%D1%8C%D0%BA%D1%8B%D0%B9_%D1%8F%D0%B7%D1%8B%D0%BA" title="Анґліцькый язык">анґл.</a> <i><span lang="en" class="description en">forwarding reference</span></i>). (см. Удкликаня (C++)) </p><p>C++ додає д C обєтово-орьєнтовані можности. Ун уводит класы, которі дают три май важливых свойства <a href="/wiki/%D0%9E%D0%B1%D1%94%D0%BA%D1%82%D0%BE%D0%B2%D0%BE_%D0%BE%D1%80%D1%8C%D1%94%D0%BD%D1%82%D0%BE%D0%B2%D0%B0%D0%BD%D0%B5_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F" title="Обєктово орьєнтоване проґрамованя">ООП</a>: <a href="/w/index.php?title=%D0%86%D0%BD%D0%BA%D0%B0%D0%BF%D1%81%D1%83%D0%BB%D0%B0%D1%86%D1%96%D1%8F_(%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F)&action=edit&redlink=1" class="new" title="Інкапсулація (проґрамованя) (такой сторінкы нїт)">інкапсулацію</a>, <a href="/w/index.php?title=%D0%9D%D0%B0%D1%81%D0%BB%D1%96%D0%B4%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F_(%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F)&action=edit&redlink=1" class="new" title="Наслідованя (проґрамованя) (такой сторінкы нїт)">наслідованя</a> і <a href="/w/index.php?title=%D0%9F%D0%BE%D0%BB%D1%96%D0%BC%D0%BE%D1%80%D1%84%D1%96%D0%B7%D0%BC_(%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F)&action=edit&redlink=1" class="new" title="Поліморфізм (проґрамованя) (такой сторінкы нїт)">поліморфізм</a>. </p><p>У штандартови C++ пуд класом (class) розумієся хосноватильськый тіп, убявленый із хоснованём єдного із ключовых слув <code>class</code>, <code>struct</code> авадь <code>union</code>, пуд штруктуров (structure) розумієся клас, убявленый через <a href="/w/index.php?title=%D0%9A%D0%BB%D1%8E%D1%87%D0%BE%D0%B2%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%BE_(%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F)&action=edit&redlink=1" class="new" title="Ключове слово (проґрамованя) (такой сторінкы нїт)">ключове слово</a> <code>struct</code>, тай пуд убєденинём (union) розумієся клас, убявленый через ключове слово <code>union</code>. У залежности уд хоснованого ключового слова мінявутся так само і дакотрі свойства самого же класа. Наприклад, у класі, обявленум через <code>struct</code>, части без уручну прописаного модіфікатора доступа будут за замовчінём мати публічну руню доступа, а не пріватну. </p><p>У тілови дефініції класа мож указати як обявліня функцій, так і їх дефініцію. У посліднёму трафункови функція є ітеґрованов(<code>inline</code>). Нештатічні функції-части можут мати кваліфікаторы <code>const</code> тай <code>volatile</code>, ай не лиш, щи можут мати удкличный кваліфікатор (<code>&</code> вадь <code>&&</code>). </p> <div class="mw-heading mw-heading3"><h3 id="Наслідованя"><span id=".D0.9D.D0.B0.D1.81.D0.BB.D1.96.D0.B4.D0.BE.D0.B2.D0.B0.D0.BD.D1.8F"></span><a href="/w/index.php?title=%D0%9D%D0%B0%D1%81%D0%BB%D1%96%D0%B4%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F_(%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F)&action=edit&redlink=1" class="new" title="Наслідованя (проґрамованя) (такой сторінкы нїт)">Наслідованя</a></h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=8" title="Едітовати секцію: Наслідованя" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=8" title="Редагувати вихідний код розділу: Наслідованя"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>C++ пудпрює <a href="/w/index.php?title=%D0%9C%D0%BD%D0%BE%D0%B3%D0%BE%D1%80%D0%B0%D0%B7%D0%BE%D0%B2%D0%B5_%D0%BD%D0%B0%D1%81%D0%BB%D1%96%D0%B4%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F&action=edit&redlink=1" class="new" title="Многоразове наслідованя (такой сторінкы нїт)">многоразове наслідованя</a>. Базові класы (класы-предкы) указувутся у наголовкови описаня класа, можливо, із спеціфікаторами доступа. Наслідованя уд кождого класа може быти публічным, засокоченым авадь запертым: </p> <table class="wikitable"> <tbody><tr> <th>Доступ части базового класа/режім наслідованя </th> <th>private-часть </th> <th>protected-часть </th> <th>public-часть </th></tr> <tr> <td>private-наслідованя </td> <td>недоступный </td> <td>private </td> <td>private </td></tr> <tr> <td>protected-наслідованя </td> <td>недоступный </td> <td>protected </td> <td>protected </td></tr> <tr> <td>public-наслідованя </td> <td>недостуный </td> <td>protected </td> <td>public </td></tr></tbody></table> <p>За замовчінём базовый клас наслідуєся ги <i>private</i>. </p><p>На выслідкови наслідованя клас-наслідник получає всі поля класа-предка і всі їх методы; мож уповісти, што каждый екземплар класа-наслідника уміщат у собі <i>пудекземплар</i> каждого із класу-предку. Якшто єден клас-предок наслідуєся дакулько раз (се можливо, якшто ун є предком дакулькых базовых класу зотворявучого класа), то екземплары класа-наслідника буде мати тулько же пудекземплару даного класа-предка. Штобы убминути такого ефекта, якшто ун нежаданый, C++ пудпорює концепцію <i>віртуалного наслідованя</i>. При наслідованёви базовый клас може обявлятися віртуалным; на всі віртуалні входы класа-предка в дерево наслідованя класа-наслідника в наслідникови зотворюєся лем єден пудекземплар. </p> <ul><li>Private наслідованя — має у собі всі методы і особности класа «утця» у запертому доступі із вон і запертому доступі для класу потомку</li> <li>Public наслідованя — має у собі всі методы і штімованя класа «утця» у выдпертому доступі із вон</li> <li>Protected наслідованя — то саме, што і private, айбо потумкы мавут доступ ід унаслідованым методам і особностям</li></ul> <div class="mw-heading mw-heading3"><h3 id="Поліморфізм"><span id=".D0.9F.D0.BE.D0.BB.D1.96.D0.BC.D0.BE.D1.80.D1.84.D1.96.D0.B7.D0.BC"></span>Поліморфізм</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=9" title="Едітовати секцію: Поліморфізм" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=9" title="Редагувати вихідний код розділу: Поліморфізм"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>C++ пудпорює <a href="/w/index.php?title=%D0%94%D1%96%D0%BD%D0%B0%D0%BC%D1%96%D1%87%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D0%BB%D1%96%D0%BC%D0%BE%D1%80%D1%84%D1%96%D0%B7%D0%BC&action=edit&redlink=1" class="new" title="Дінамічный поліморфізм (такой сторінкы нїт)">дінамічный поліморфізм</a> і <a href="/w/index.php?title=%D0%A8%D1%82%D1%96%D0%BC%D0%BE%D0%B2%D1%81%D1%8C%D0%BA%D1%8B%D0%B9_%D0%BF%D0%BE%D0%BB%D1%96%D0%BC%D0%BE%D1%80%D1%84%D1%96%D0%B7%D0%BC&action=edit&redlink=1" class="new" title="Штімовськый поліморфізм (такой сторінкы нїт)">штімовськый поліморфізм</a>. </p><p>Штімовськый поліморфізм представленый: </p> <ul><li>Арґументами за замовчінём для функцій. Наприклад, для функції <code>void f(int x, int y=5, int z=10)</code>, выклик <code>f(1)</code>, <code>f(1,5)</code> и <code>f(1,5,10)</code> еквівалентный.</li> <li><a href="/w/index.php?title=%D0%9F%D0%B5%D1%80%D0%B5%D1%83%D0%B1%D1%82%D0%B5%D1%80%D1%8C%D1%85%D0%B0%D0%BD%D1%8F_%D1%84%D1%83%D0%BD%D0%BA%D1%86%D0%B8%D0%B9&action=edit&redlink=1" class="new" title="Переубтерьханя функций (такой сторінкы нїт)">Переубтерьханя функций</a>: функція із єдным імнём може мати рузне число і рузні по тіпу арґументы. Наприклад:</li> <li><div class="mw-highlight mw-highlight-lang-cpp mw-content-ltr" dir="ltr"><pre><span></span><span class="kt">void</span><span class="w"> </span><span class="nf">Print</span><span class="p">(</span><span class="kt">int</span><span class="w"> </span><span class="n">x</span><span class="p">);</span> <span class="kt">void</span><span class="w"> </span><span class="nf">Print</span><span class="p">(</span><span class="kt">double</span><span class="w"> </span><span class="n">x</span><span class="p">);</span> <span class="kt">void</span><span class="w"> </span><span class="nf">Print</span><span class="p">(</span><span class="kt">int</span><span class="w"> </span><span class="n">x</span><span class="p">,</span><span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">y</span><span class="p">);</span> </pre></div></li></ul> <dl><dd><dl><dd>Частным трафунком переубтерьханя функцій мож лічити <a href="/w/index.php?title=%D0%9F%D0%B5%D1%80%D0%B5%D1%83%D0%B1%D1%82%D0%B5%D1%80%D1%8C%D1%85%D0%B0%D0%BD%D1%8F_%D0%BE%D0%BF%D0%B5%D1%80%D0%B0%D1%82%D0%BE%D1%80%D1%83&action=edit&redlink=1" class="new" title="Переубтерьханя оператору (такой сторінкы нїт)">переубтерьханя оператору</a>.</dd></dl></dd></dl> <ul><li>Механізмом шаблону</li></ul><p> Дінамічный поліморфізм реалізуєся помочов <a href="/w/index.php?title=%D0%92%D1%96%D1%80%D1%82%D1%83%D0%B0%D0%BB%D0%BD%D1%96_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B&action=edit&redlink=1" class="new" title="Віртуалні методы (такой сторінкы нїт)">віртуалных методу</a> тай іерархії наслідованя. Поліморфным у C++ є тип, мавучый ходь єден віртуалный метод. приклад іерархї:</p><div class="mw-highlight mw-highlight-lang-cpp mw-content-ltr" dir="ltr"><pre><span></span><span class="k">class</span><span class="w"> </span><span class="nc">Figure</span> <span class="p">{</span> <span class="k">public</span><span class="o">:</span> <span class="w"> </span><span class="k">virtual</span><span class="w"> </span><span class="kt">void</span><span class="w"> </span><span class="n">Draw</span><span class="p">()</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">0</span><span class="p">;</span><span class="w"> </span><span class="c1">// чистый віртуалный метод</span> <span class="w"> </span><span class="k">virtual</span><span class="w"> </span><span class="o">~</span><span class="n">Figure</span><span class="p">();</span><span class="w"> </span><span class="c1">// аж є ходь єден віртуалный метод дештруктор гія зробити віртуалным</span> <span class="p">};</span> <span class="k">class</span><span class="w"> </span><span class="nc">Square</span><span class="w"> </span><span class="o">:</span><span class="w"> </span><span class="k">public</span><span class="w"> </span><span class="n">Figure</span> <span class="p">{</span> <span class="k">public</span><span class="o">:</span> <span class="w"> </span><span class="kt">void</span><span class="w"> </span><span class="n">Draw</span><span class="p">()</span><span class="w"> </span><span class="k">override</span><span class="p">;</span> <span class="p">};</span> <span class="k">class</span><span class="w"> </span><span class="nc">Circle</span><span class="w"> </span><span class="o">:</span><span class="w"> </span><span class="k">public</span><span class="w"> </span><span class="n">Figure</span> <span class="p">{</span> <span class="k">public</span><span class="o">:</span> <span class="w"> </span><span class="kt">void</span><span class="w"> </span><span class="n">Draw</span><span class="p">()</span><span class="w"> </span><span class="k">override</span><span class="p">;</span> <span class="p">};</span> </pre></div><p>Туйкы клас Figure є <a href="/w/index.php?title=%D0%90%D0%B1%D1%88%D1%82%D1%80%D0%B0%D0%BA%D1%82%D0%BD%D1%8B%D0%B9_%D0%BA%D0%BB%D0%B0%D1%81&action=edit&redlink=1" class="new" title="Абштрактный клас (такой сторінкы нїт)">абштрактным</a> (і, онь, <a href="/w/index.php?title=%D0%86%D0%BD%D1%82%D0%B5%D1%80%D1%84%D0%B5%D0%B9%D1%81_(%D0%BE%D0%B1%D1%94%D0%BA%D1%82%D0%BD%D0%BE-%D0%BE%D1%80%D1%8C%D1%94%D0%BD%D1%82%D0%BE%D0%B2%D0%B0%D0%BD%D0%B5_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F)&action=edit&redlink=1" class="new" title="Інтерфейс (обєктно-орьєнтоване проґрамованя) (такой сторінкы нїт)">інтерфейсным</a>), позад того што метод Draw не дефінованый. Обєкты сего класа не мож зотворити, айбо мож хосновати удкликаня авадь указникы із тіпом Figure. Ізбраня реалізації метода Draw буде проізводитися за час окончованя выходячи із реалного тіпа обєкта. </p><div class="mw-heading mw-heading3"><h3 id="Інкапсулація"><span id=".D0.86.D0.BD.D0.BA.D0.B0.D0.BF.D1.81.D1.83.D0.BB.D0.B0.D1.86.D1.96.D1.8F"></span><a href="/w/index.php?title=%D0%86%D0%BD%D0%BA%D0%B0%D0%BF%D1%81%D1%83%D0%BB%D0%B0%D1%86%D1%96%D1%8F_(%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F)&action=edit&redlink=1" class="new" title="Інкапсулація (проґрамованя) (такой сторінкы нїт)">Інкапсулація</a></h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=10" title="Едітовати секцію: Інкапсулація" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=10" title="Редагувати вихідний код розділу: Інкапсулація"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Інкапсуляція у C++ реалізуєся через ідифікацію руня доступа до частий класа: они можут быти публічными (удпертыми, <code>public</code>), засокочеными (<code>protected</code>) і пріватными (запертыми, <code>private</code>). У C++ штруктуры формално рузнится уд класу лем тым, што за замовчінём руня доступа д частям класа і тіп наслідованя у штруктуры публічні, а у класа — пріватні. </p> <table class="wikitable"> <tbody><tr> <th>Доступ </th> <th>private </th> <th>protected </th> <th>public </th></tr> <tr> <td>Самый клас </td> <td>Айно </td> <td>Айно </td> <td>Айно </td></tr> <tr> <td>Цімборы </td> <td>Айно </td> <td>Айно </td> <td>Айно </td></tr> <tr> <td>Наслідникы </td> <td>ні </td> <td>Айно </td> <td>Айно </td></tr> <tr> <td>Ізпоза </td> <td>ні </td> <td>ні </td> <td>Айно </td></tr></tbody></table> <p>Перевірка доступа іде за час компілації, проба звіданя до недоступної части класа выкликає хыбу компілації. </p> <div class="mw-heading mw-heading4"><h4 id="Цімборы"><span id=".D0.A6.D1.96.D0.BC.D0.B1.D0.BE.D1.80.D1.8B"></span>Цімборы</h4><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=11" title="Едітовати секцію: Цімборы" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=11" title="Редагувати вихідний код розділу: Цімборы"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p><i>Функції-цімборы</i> — то є функциї, котрі не є функціями-частями тай зато мавучі доступ д засокоченым і запертым частям класа. Они мавут быти обявлині в тілови класа ги <code>friend</code>. Наприклад:</p><div class="mw-highlight mw-highlight-lang-cpp mw-content-ltr" dir="ltr"><pre><span></span><span class="k">class</span><span class="w"> </span><span class="nc">Matrix</span><span class="w"> </span><span class="p">{</span> <span class="w"> </span><span class="k">friend</span><span class="w"> </span><span class="n">Matrix</span><span class="w"> </span><span class="nf">Multiply</span><span class="p">(</span><span class="n">Matrix</span><span class="w"> </span><span class="n">m1</span><span class="p">,</span><span class="w"> </span><span class="n">Matrix</span><span class="w"> </span><span class="n">m2</span><span class="p">);</span> <span class="p">};</span> </pre></div><p>Туйкы функція <code>Multiply</code> може звідатися д полям і функціям-частям класа <code>Matrix</code>. </p><p>Цімборськым може быти обявленый як всьый клас, так і функція-часть класа. Чотыри важливых ограничіня, котрі ся кладут на удношіня цімборськости в C++: </p> <ul><li><b>Цімборськость не транзітівна.</b> Якшто A обявляє цімбором B, ай B, у свою очерідь, обявляє цімбором C, то C не стає автоматічно цімбором для A. На то, A мусит явно обявити C свойым цімбором.</li> <li><b>Цімборськость не сполочна.</b> Якшто клас A обявляє цімбором клас B, то ун не стає автоматічно цімбором для B. На то мусит існовати явне обявліня цімборськости A в класови B.</li> <li><b>Цімборськость не наслідуєся.</b> Якшто A обявляє клас B свойым цімбором, то потомкы B не ставут автоматічно цімборами A. На то каждый із них мусит быти обявленый цімбором A в явнуй формі.</li> <li><b>Цімборськость не розусяжуєся на потумку.</b> Якшто клас A обявляє B цімбором, то B не стає автоматічно цімбором для класу-потумку A. Каждый потомок, якшто то-то гія, мусит обявити B свойым цімбором сам.</li></ul> <p>У цілому видячи се-се правило мож сформуловати такым образом: <i>«Удношіня Цімборськости існує лем миже тыми класами (класом і функціёв), для котрых оно явно обявлене в кодови, і робит лем у тому напрямлінёви, в котрому оно обявлене».</i> </p> <div class="mw-heading mw-heading3"><h3 id="Спеціалні_функції"><span id=".D0.A1.D0.BF.D0.B5.D1.86.D1.96.D0.B0.D0.BB.D0.BD.D1.96_.D1.84.D1.83.D0.BD.D0.BA.D1.86.D1.96.D1.97"></span>Спеціалні функції</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=12" title="Едітовати секцію: Спеціалні функції" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=12" title="Редагувати вихідний код розділу: Спеціалні функції"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Клас за замовчінём може мати шість спеціалных функцій: конштруктор за замовчінём конштруктор копіёваня, конштруктор переміщіня, дештруктор, оператор присвоїня копіёванём, оператор присвоїня переміщинём. Тоже мож явно дефініціёвати їх всьых (см. <a href="/w/index.php?title=%D0%9F%D1%80%D0%B0%D0%B2%D0%B8%D0%BB%D0%BE_%D1%82%D1%80%D1%91%D1%85_(C%2B%2B)&action=edit&redlink=1" class="new" title="Правило трёх (C++) (такой сторінкы нїт)">Правило трёх</a>). </p> <div class="ts-Конец_цитаты-source"><div class="mw-highlight mw-highlight-lang-cpp mw-content-ltr" dir="ltr"><pre><span></span><span class="k">class</span><span class="w"> </span><span class="nc">Array</span><span class="w"> </span><span class="p">{</span> <span class="k">public</span><span class="o">:</span> <span class="w"> </span><span class="n">Array</span><span class="p">()</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="k">default</span><span class="p">;</span><span class="w"> </span><span class="c1">// компілатор зотворит конштруктор за замовчінём сам</span> <span class="w"> </span><span class="n">Array</span><span class="p">(</span><span class="kt">size_t</span><span class="w"> </span><span class="n">_len</span><span class="p">)</span><span class="w"> </span><span class="o">:</span> <span class="w"> </span><span class="n">len</span><span class="p">(</span><span class="n">_len</span><span class="p">)</span><span class="w"> </span><span class="p">{</span> <span class="w"> </span><span class="n">val</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="k">new</span><span class="w"> </span><span class="kt">double</span><span class="p">[</span><span class="n">_len</span><span class="p">];</span> <span class="w"> </span><span class="p">}</span> <span class="w"> </span><span class="n">Array</span><span class="p">(</span><span class="k">const</span><span class="w"> </span><span class="n">Array</span><span class="w"> </span><span class="o">&</span><span class="w"> </span><span class="n">a</span><span class="p">)</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="k">delete</span><span class="p">;</span><span class="w"> </span><span class="c1">// конштруктор копіёваня явно зотертый</span> <span class="w"> </span><span class="n">Array</span><span class="p">(</span><span class="n">Array</span><span class="w"> </span><span class="o">&&</span><span class="w"> </span><span class="n">a</span><span class="p">);</span><span class="w"> </span><span class="c1">// конштруктор переміщіня</span> <span class="w"> </span><span class="o">~</span><span class="n">Array</span><span class="p">()</span><span class="w"> </span><span class="p">{</span> <span class="w"> </span><span class="k">delete</span><span class="p">[]</span><span class="w"> </span><span class="n">val</span><span class="p">;</span> <span class="w"> </span><span class="p">}</span> <span class="w"> </span><span class="n">Array</span><span class="o">&</span><span class="w"> </span><span class="k">operator</span><span class="o">=</span><span class="p">(</span><span class="k">const</span><span class="w"> </span><span class="n">Array</span><span class="o">&</span><span class="w"> </span><span class="n">rhs</span><span class="p">);</span><span class="w"> </span><span class="c1">// оператор присвоёваня копіёванём</span> <span class="w"> </span><span class="n">Array</span><span class="o">&</span><span class="w"> </span><span class="k">operator</span><span class="o">=</span><span class="p">(</span><span class="n">Array</span><span class="o">&&</span><span class="w"> </span><span class="n">rhs</span><span class="p">);</span><span class="w"> </span><span class="c1">// оператор присвоёваня переміщінём</span> <span class="w"> </span><span class="kt">double</span><span class="o">&</span><span class="w"> </span><span class="k">operator</span><span class="p">[](</span><span class="kt">size_t</span><span class="w"> </span><span class="n">i</span><span class="p">)</span><span class="w"> </span><span class="p">{</span> <span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="n">val</span><span class="p">[</span><span class="n">i</span><span class="p">];</span> <span class="w"> </span><span class="p">}</span> <span class="w"> </span><span class="k">const</span><span class="w"> </span><span class="kt">double</span><span class="o">&</span><span class="w"> </span><span class="k">operator</span><span class="p">[](</span><span class="kt">size_t</span><span class="w"> </span><span class="n">i</span><span class="p">)</span><span class="w"> </span><span class="k">const</span><span class="w"> </span><span class="p">{</span> <span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="n">val</span><span class="p">[</span><span class="n">i</span><span class="p">];</span> <span class="w"> </span><span class="p">}</span> <span class="k">protected</span><span class="o">:</span> <span class="w"> </span><span class="n">std</span><span class="o">::</span><span class="kt">size_t</span><span class="w"> </span><span class="n">len</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">0</span><span class="p">;</span><span class="w"> </span><span class="c1">// ініціалізація поля</span> <span class="w"> </span><span class="kt">double</span><span class="o">*</span><span class="w"> </span><span class="n">val</span><span class="w"> </span><span class="p">{</span><span class="k">nullptr</span><span class="p">};</span> <span class="p">};</span> </pre></div></div><p>Конштруктор выкликаєся для ініціаліції обєкта (удповідного тіпа) при ёго зотворінёви, а дештруктор — для зрушіня обєкта. Клас може мати пару конштруктору, айбо дештруктор може мати лем єден. Конштрукторы в C++ не можут быти обявлині віртуалными, а дештрукторы — можут, тай в основному обявлявутся для всьых поліморфных тіпу, штобы ґарантовати правильне зрушіня доступного за удкликанём авадь указатилёви обєкта незалежно уд того, якого тіпа удкликаня вадь указатиль. аж є ходь у єдного із базовых класу віртуалного дештруктора, дештруктор класа наслідника автоматічно стає віртуалным. </p><div class="mw-heading mw-heading3"><h3 id="Нові_можности"><span id=".D0.9D.D0.BE.D0.B2.D1.96_.D0.BC.D0.BE.D0.B6.D0.BD.D0.BE.D1.81.D1.82.D0.B8"></span>Нові можности</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=13" title="Едітовати секцію: Нові можности" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=13" title="Редагувати вихідний код розділу: Нові можности"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div><p> Шаблоны дозволювут зотворяти функції і класы, штімовані дефініційным тіпом авадь значінём. Наприклад, попередный клас муг бы реалізовати масив для ходь-якого тіпа даных:</p><div class="mw-highlight mw-highlight-lang-cpp mw-content-ltr" dir="ltr"><pre><span></span><span class="k">template</span><span class="w"> </span><span class="o"><</span><span class="k">typename</span><span class="w"> </span><span class="nc">T</span><span class="o">></span> <span class="k">class</span><span class="w"> </span><span class="nc">Array</span><span class="w"> </span><span class="p">{</span> <span class="w"> </span><span class="p">...</span> <span class="w"> </span><span class="n">T</span><span class="o">&</span><span class="w"> </span><span class="k">operator</span><span class="p">[](</span><span class="kt">size_t</span><span class="w"> </span><span class="n">i</span><span class="p">)</span><span class="w"> </span><span class="p">{</span> <span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="n">val</span><span class="p">[</span><span class="n">i</span><span class="p">];</span> <span class="w"> </span><span class="p">}</span> <span class="k">protected</span><span class="o">:</span> <span class="w"> </span><span class="n">std</span><span class="o">::</span><span class="kt">size_t</span><span class="w"> </span><span class="n">len</span><span class="w"> </span><span class="p">{</span><span class="mi">0</span><span class="p">};</span><span class="w"> </span><span class="c1">// ініціалізація поля</span> <span class="w"> </span><span class="n">T</span><span class="o">*</span><span class="w"> </span><span class="n">val</span><span class="w"> </span><span class="p">{</span><span class="k">nullptr</span><span class="p">};</span> <span class="p">};</span> </pre></div> <div class="mw-heading mw-heading2"><h2 id="Штандартна_бібліотека"><span id=".D0.A8.D1.82.D0.B0.D0.BD.D0.B4.D0.B0.D1.80.D1.82.D0.BD.D0.B0_.D0.B1.D1.96.D0.B1.D0.BB.D1.96.D0.BE.D1.82.D0.B5.D0.BA.D0.B0"></span>Штандартна бібліотека</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=14" title="Едітовати секцію: Штандартна бібліотека" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=14" title="Редагувати вихідний код розділу: Штандартна бібліотека"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <div class="mw-heading mw-heading3"><h3 id="Сполочна_штруктура"><span id=".D0.A1.D0.BF.D0.BE.D0.BB.D0.BE.D1.87.D0.BD.D0.B0_.D1.88.D1.82.D1.80.D1.83.D0.BA.D1.82.D1.83.D1.80.D0.B0"></span>Сполочна штруктура</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=15" title="Едітовати секцію: Сполочна штруктура" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=15" title="Редагувати вихідний код розділу: Сполочна штруктура"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Штандартна бібліотека C++ має набор можностю, котрі мусят быти доступні у каждуй імплементації языка, убы дати проґрамістам просту роботу із языковыми міліями тай зотворити основу про розвуй так приладных аплікацій широкого шпектра, як і шпецялізованых бібліотек. Штандартна бібліотека C++ убсягат часть штандартної бібліотекы Цы. </p><p>Штандартна бібліотека C++ має у собі часть штандартної бібліотекы Цы. Штандарт C++ має норматівне удкликаня на штандарт C уд <a href="/wiki/1990" title="1990">1990 года</a> і не дефініціює сам то-ты функції штандартної бібліотекы, котрі берутся із штандартної бібліотекы Цы. Айбо у C++ наголовчні файлы Цы адаптовані: узамін <code><stdio.h></code> хоснуєся <code><cstdio></code>, а їх содержимое размещается в пространстве имён <code>std</code>. Это позволяет избежать конфликтов имён и сохранить совместимость. </p><p>Доступ до можностю штандартної бібліотекы C++ ся дустає включінём у проґраму (через діректіву #include) потребных наголовочных файлу. У штандарті <a href="/w/index.php?title=C%2B%2B11&action=edit&redlink=1" class="new" title="C++11 (такой сторінкы нїт)">C++11</a> вызначино 79 такых файлу. У май новых верзіях языка (<a href="/w/index.php?title=C%2B%2B17&action=edit&redlink=1" class="new" title="C++17 (такой сторінкы нїт)">C++17</a>, <a href="/w/index.php?title=C%2B%2B20&action=edit&redlink=1" class="new" title="C++20 (такой сторінкы нїт)">C++20</a>) їх кулькость ся выросла позад додаваня новых можностю, гий робота із файловов сістемов (<filesystem>), концепты (<concepts>) і корутіны. Вшыткы засобы штандартної бібліотекы надлежат д просторови імен std. Єдночасно ся просит не хосновати діректіву using namespace std; ґлобално, убы не выходили неєднозначности в кодови. </p><p>Із розвоём штандарту (<a href="/w/index.php?title=C%2B%2B11&action=edit&redlink=1" class="new" title="C++11 (такой сторінкы нїт)">C++11</a>, <a href="/w/index.php?title=C%2B%2B14&action=edit&redlink=1" class="new" title="C++14 (такой сторінкы нїт)">C++14</a>, <a href="/w/index.php?title=C%2B%2B17&action=edit&redlink=1" class="new" title="C++17 (такой сторінкы нїт)">C++17</a>, <a href="/w/index.php?title=C%2B%2B20&action=edit&redlink=1" class="new" title="C++20 (такой сторінкы нїт)">C++20</a>) бібліотека ся розширює, давучи май безпечні і выразнi можности проґрамованя. Наприклад, у <a href="/w/index.php?title=C%2B%2B11&action=edit&redlink=1" class="new" title="C++11 (такой сторінкы нїт)">C++11</a> появилися «розумні указатилі» автоматічного кроманёваня тямов, а в <a href="/w/index.php?title=C%2B%2B17&action=edit&redlink=1" class="new" title="C++17 (такой сторінкы нїт)">C++17</a> – штруктуры робот із файловов сістемов. Кажде обновіня хоче злегшити розробку, засокочувучи зворотну сполочность і высоку ефектівность. </p> <div class="mw-heading mw-heading3"><h3 id="Пудпора_языка"><span id=".D0.9F.D1.83.D0.B4.D0.BF.D0.BE.D1.80.D0.B0_.D1.8F.D0.B7.D1.8B.D0.BA.D0.B0"></span>Пудпора языка</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=16" title="Едітовати секцію: Пудпора языка" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=16" title="Редагувати вихідний код розділу: Пудпора языка"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Сюды надлежат можности, котрых гія для роботы проґрам, таю за інформацію о особностях імплементації. Включає можности, котрых гія для выділіня тямы, механізмы <b><a href="/w/index.php?title=RTTI&action=edit&redlink=1" class="new" title="RTTI (такой сторінкы нїт)">RTTI (Run-Time Type Information)</a></b>, базові выйимкы, границі значінь числовых тіпу даных, базові засобы роботы із міліём, гий наприклад, сістемовый час, убробляня сіґналу UNIX, завершіня проґрамы. </p> <div class="mw-heading mw-heading3"><h3 id="Стандартні_контейнеры"><span id=".D0.A1.D1.82.D0.B0.D0.BD.D0.B4.D0.B0.D1.80.D1.82.D0.BD.D1.96_.D0.BA.D0.BE.D0.BD.D1.82.D0.B5.D0.B9.D0.BD.D0.B5.D1.80.D1.8B"></span>Стандартні <a href="/w/index.php?title=%D0%9A%D0%BE%D0%BD%D1%82%D0%B5%D0%B9%D0%BD%D0%B5%D1%80%D1%8B_(%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F)&action=edit&redlink=1" class="new" title="Контейнеры (проґрамованя) (такой сторінкы нїт)">контейнеры</a></h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=17" title="Едітовати секцію: Стандартні контейнеры" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=17" title="Редагувати вихідний код розділу: Стандартні контейнеры"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>У штандартнуй бібліотеци сут шаблоны за такі контейнеры: </p> <ul><li>Дінамічный масив (<b>vector</b>),</li> <li>Штатічный масив (<b>array</b>),</li> <li>Єднонапрямлиный список (<b>forward_list</b>),</li> <li>Двонапрямлиный список (<b>list</b>),</li> <li><a href="/w/index.php?title=%D0%A1%D1%82%D0%B5%D0%BA&action=edit&redlink=1" class="new" title="Стек (такой сторінкы нїт)">Стек</a> (<b>stack</b>),</li> <li>Дек (<b>deque</b>),</li> <li>Асоціатівні масивы (<b>map, multimap</b>),</li> <li>Множины (<b>set, multiset</b>),</li> <li>Очерідь із приорітетом (<b>priority_queue</b>).</li></ul> <div class="mw-heading mw-heading3"><h3 id="Основні_утиліты"><span id=".D0.9E.D1.81.D0.BD.D0.BE.D0.B2.D0.BD.D1.96_.D1.83.D1.82.D0.B8.D0.BB.D1.96.D1.82.D1.8B"></span>Основні утиліты</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=18" title="Едітовати секцію: Основні утиліты" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=18" title="Редагувати вихідний код розділу: Основні утиліты"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>У тот розділ уходит опис основных базовых елементу, што ся ухоснововут у штандартнуй бібліотеци, <a href="/w/index.php?title=%D0%90%D0%BB%D0%BE%D0%BA%D0%B0%D1%82%D0%BE%D1%80&action=edit&redlink=1" class="new" title="Алокатор (такой сторінкы нїт)">алокаторы тямы</a>, пудпора часа і даты в штилови C. </p> <ul><li><b>Ітераторы</b>: засокочувут шаблоны <a href="/w/index.php?title=%D0%86%D1%82%D0%B5%D1%80%D0%B0%D1%82%D0%BE%D1%80%D1%8B_(%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F)&action=edit&redlink=1" class="new" title="Ітераторы (проґрамованя) (такой сторінкы нїт)">ітератору</a>, помочов котрых у штандартнуй бібліотеци ся реалізує штандартный механізм ґрупового ухоснованя алґорітму за убробліня даных у контейнерах.</li></ul> <ul><li><b>Алґорітмы</b>: шаблоны описа операцій убробляня, котрі ся можут ухоснововати до ходь-якої послідовности елементу, включно із тотыми в контейнерах. У тот розділ тоже входят функції <b>bsearch()</b> і <b>qsort()</b> із штандартної бібліотекы C.</li></ul> <ul><li><b>Строчкы</b>: шаблоны рядку у штилі C++. У тому розділови тож є бібліотекы про роботу із текстом тай сімболами у штилі C.</li></ul> <ul><li><b>Уводжіня-выводжіня</b>: шаблоны і вспомижні класы про потокы уводжіня-выводжіня сполочного вида, про рядкове уводжіня-выводжіня, маніпулаторы (засобованя контрола формата потокового уводжіня-выводжіня у штилі C++).</li></ul> <ul><li><b>Локалізація</b>: дефініції, котрі ся ухоснововут подля пудпоры народных особностю тай формату представліня (дат, валют тай т. д.) у штилі C++ і в штилі C.</li></ul> <ul><li><b>Діаґностіка</b>: дефініції ряда вийимку і механізму контрола твержінь за час оконаня проґрамы (<b>assert</b>). Пудпора убробкы хыб у штилі C.</li></ul> <ul><li><b>Числа</b>: дефініція роботы із комплексными числами, математічні векторы, пудпора сополоченых математічных функцій, ґенератор трафунковых чисил.</li></ul> <div class="mw-heading mw-heading3"><h3 id="STL_–_Standard_Template_Library_(Штандартна_Шаблонова_Бібліотека)"><span id="STL_.E2.80.93_Standard_Template_Library_.28.D0.A8.D1.82.D0.B0.D0.BD.D0.B4.D0.B0.D1.80.D1.82.D0.BD.D0.B0_.D0.A8.D0.B0.D0.B1.D0.BB.D0.BE.D0.BD.D0.BE.D0.B2.D0.B0_.D0.91.D1.96.D0.B1.D0.BB.D1.96.D0.BE.D1.82.D0.B5.D0.BA.D0.B0.29"></span>STL – Standard Template Library (Штандартна Шаблонова Бібліотека)</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=19" title="Едітовати секцію: STL – Standard Template Library (Штандартна Шаблонова Бібліотека)" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=19" title="Редагувати вихідний код розділу: STL – Standard Template Library (Штандартна Шаблонова Бібліотека)"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Контейнеры, рядкы, алґорітмы, ітераторы і основні утиліты, за выйимков переберань із бібліотекы C, ся в рокаши означувут ги <b>STL (Standard Template Library – Штандартна Шаблонова Бібліотека)</b>. Іззачинаня STL была окремым продуктом і ї абревіатура мала инаку інтерпретацію, айбо потум стала частёв штандартної бібліотекы C++ тай ї неудкапчанным елементом. </p><p>У імнёви пудкреслено, же для реалізації засобу сполочному виді (контейнеру, рядку, алґорітму) сут хосновані механізмы <b>солоченого проґрамованя</b> (<b>template</b> – шаблоны C++). </p><p>Бярен Страуструп у свойых роботах детално описує причины, із котрых быв зробленый сам тот выбор. Основными причинами были: </p> <ul><li><b>Універсалность вырішіня</b> – шаблонові контейнеры, на розділ уд обєктных, можут быти легко хосновані для <b>не обєктных тіпу</b> і не требувут єдного предка у тіпу елементу.</li> <li><b>Технічна ефектівность</b> – в основному, операції шаблонового контейнера не требувуть <b>выклику віртуалных функцій</b> і можут быти легко вбудовані <b>(inline)</b>, што у выслідках дає выгру в продуктивности.</li></ul> <p>Тот пудход зробив <b>STL</b> єднов із май успішных і май бульш розусядженых частий штандартної бібліотекы C++. </p><p>Із штандарта C++11 додалися слідувущі можности: </p> <ul><li>Додана бібліотека <regex>, реалізувуча всьымыприйняті механізмы ісканя тай пудстановкы із помочов реґуларных выразу.</li> <li>Додана пудпора многопоточности.</li> <li>Атомарні операції.</li> <li>unordered-варіанты асоціатівных масиву і множин.</li> <li>Розумні указатилі, задавущі автоматічне выслободжіня выділеної тямы.</li></ul> <div class="mw-heading mw-heading3"><h3 id="Реалізації"><span id=".D0.A0.D0.B5.D0.B0.D0.BB.D1.96.D0.B7.D0.B0.D1.86.D1.96.D1.97"></span>Реалізації</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=20" title="Едітовати секцію: Реалізації" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=20" title="Редагувати вихідний код розділу: Реалізації"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>STL до того, як стала частёв штандарта C++, была боковов розробков. Іззачинаня ї розробляла фірма <b><a href="/w/index.php?title=Hewlett-Packard&action=edit&redlink=1" class="new" title="Hewlett-Packard (такой сторінкы нїт)">HP (Hewlett-Packard)</a></b>, а потумкы – <b><a href="/w/index.php?title=SGI&action=edit&redlink=1" class="new" title="SGI (такой сторінкы нїт)">SGI (Silicon Graphics Inc.)</a></b>. </p><p>Штандарт языка не означає ї <b>«STL»</b>, бо она стала неудкапчаннов частёв языка, айбо много людий і дотепирь хоснувут то назов, убы удрузнити ї уд иншых частий штандартної бібліотекы (наприклад, <b>iostream</b>, пудрозділ C тай ин.). </p><p>Проєкт пуд імнём STLport<sup id="cite_ref-30" class="reference"><a href="#cite_note-30"><span class="cite-bracket">[</span>30<span class="cite-bracket">]</span></a></sup> заснованый на <b>SGI STL</b>, заниматся фуртовым убновінём <b>STL, IOstream</b> і рядковых класу. Дакотрі инші проєкты тож ведут розвуй окремых імплементацій штандартної бібліотекы. </p> <div class="mw-heading mw-heading2"><h2 id="Рузня_із_Цы"><span id=".D0.A0.D1.83.D0.B7.D0.BD.D1.8F_.D1.96.D0.B7_.D0.A6.D1.8B"></span>Рузня із Цы</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=21" title="Едітовати секцію: Рузня із Цы" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=21" title="Редагувати вихідний код розділу: Рузня із Цы"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <figure class="mw-default-size mw-halign-right" typeof="mw:File/Thumb"><a href="/wiki/%D0%A4%D0%B0%D0%B9%D0%BB:CppCgenealogy.png" class="mw-file-description"><img src="//upload.wikimedia.org/wikipedia/commons/thumb/e/ea/CppCgenealogy.png/220px-CppCgenealogy.png" decoding="async" width="220" height="366" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/e/ea/CppCgenealogy.png/330px-CppCgenealogy.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/e/ea/CppCgenealogy.png/440px-CppCgenealogy.png 2x" data-file-width="454" data-file-height="756" /></a><figcaption>ґенеолоґія і рокашный вплыв верзій Сі і C++ (за «Короткым курсом» Штрауштрупа)</figcaption></figure> <div class="mw-heading mw-heading3"><h3 id="Сполочность_із_Цы"><span id=".D0.A1.D0.BF.D0.BE.D0.BB.D0.BE.D1.87.D0.BD.D0.BE.D1.81.D1.82.D1.8C_.D1.96.D0.B7_.D0.A6.D1.8B"></span>Сполочность із Цы</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=22" title="Едітовати секцію: Сполочность із Цы" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=22" title="Редагувати вихідний код розділу: Сполочность із Цы"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Выбираня іменно С гий основы для зотворіня языка проґрамованя убяснявут, тым што язык C: </p> <ol><li>Є многоцілёвым, лаконічным тай удносно низькорувнёвым языком;</li> <li>Пудходит для вырішіня бульшости сістемных задач;</li> <li>оконаня усюды і на всёму;</li> <li>стыкуєся із міліём проґрамованя UNIX.<div class="ts-Конец_цитаты-source">— <cite>Б. </cite><cite>Страуструп. Язык программирования C++. Раздел 1.6</cite></div></li></ol> <p>Невзиравучи на дакотрі знані хыбы языка <b>Цы</b>, <b>Бярне Страуструп</b> выбрав ёго за основу, бо «у <b>Цы</b> є свої проблемы, айбо тоты же проблемы бы мав і розвоєный уд нула язык, а проблемы <b>Цы</b> нам знані». </p><p>Окром того, то дало можность скоро зотворити первый прототіп компілатора (<b>cfront</b>), котрый лем перетовмачовав додані сінтаксічні елементы на оріґіналный <b>Цы</b>. </p><p>Із поступом розвоя <b>C++</b> до него додали инакі можности, котрі зробили нетрібными дакотры конструкції <b>Цы</b>. Позад сего не раз было звіданя про то, убы удказатися уд сполочности языку і зняти старі конструкції. Но тым не май мало сполочность была засокочена, того што: </p> <ul><li><b>Засокочено існувучый код</b>, написаный на <b>Цы</b>, убы го мож было прямо перенести у <b>C++</b>;</li> <li><b>Не гія наново вчити проґрамісту</b>, котрі вже знали <b>Цы</b> (їм лем гія довчити нові можности <b>C++</b>);</li> <li><b>Выключина путанина</b> миже языками при їх рокашному хоснованёва («якшто два языкы хоснувутся в рокаши, їх розділы мавут быти авадь мінімалні, авадь такі грубі, убы языкы не мож было ізпутати»).</li></ul> <div class="mw-heading mw-heading3"><h3 id="Нові_можности_2"><span id=".D0.9D.D0.BE.D0.B2.D1.96_.D0.BC.D0.BE.D0.B6.D0.BD.D0.BE.D1.81.D1.82.D0.B8_2"></span>Нові можности</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=23" title="Едітовати секцію: Нові можности" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=23" title="Редагувати вихідний код розділу: Нові можности"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <div class="mw-highlight mw-highlight-lang-cpp mw-content-ltr mw-highlight-lines" dir="ltr"><pre><span></span><span class="linenos" data-line="1"></span><span class="k">class</span><span class="w"> </span><span class="nc">Array</span><span class="w"> </span><span class="p">{</span> <span class="linenos" data-line="2"></span><span class="k">public</span><span class="o">:</span> <span class="linenos" data-line="3"></span><span class="w"> </span><span class="n">Array</span><span class="p">()</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="k">default</span><span class="p">;</span><span class="w"> </span><span class="c1">// компілатор зотворит конштруктор за замовчінём сам</span> <span class="linenos" data-line="4"></span><span class="w"> </span><span class="n">Array</span><span class="p">(</span><span class="kt">size_t</span><span class="w"> </span><span class="n">_len</span><span class="p">)</span><span class="w"> </span><span class="o">:</span> <span class="linenos" data-line="5"></span><span class="w"> </span><span class="n">len</span><span class="p">(</span><span class="n">_len</span><span class="p">)</span><span class="w"> </span><span class="p">{</span> <span class="linenos" data-line="6"></span><span class="w"> </span><span class="n">val</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="k">new</span><span class="w"> </span><span class="kt">double</span><span class="p">[</span><span class="n">_len</span><span class="p">];</span> <span class="linenos" data-line="7"></span><span class="w"> </span><span class="p">}</span> <span class="linenos" data-line="8"></span><span class="w"> </span><span class="n">Array</span><span class="p">(</span><span class="k">const</span><span class="w"> </span><span class="n">Array</span><span class="w"> </span><span class="o">&</span><span class="w"> </span><span class="n">a</span><span class="p">)</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="k">delete</span><span class="p">;</span><span class="w"> </span><span class="c1">// конштруктор копіёваня явно зотертый</span> <span class="linenos" data-line="9"></span><span class="w"> </span><span class="n">Array</span><span class="p">(</span><span class="n">Array</span><span class="w"> </span><span class="o">&&</span><span class="w"> </span><span class="n">a</span><span class="p">);</span><span class="w"> </span><span class="c1">// конштруктор переміщиня</span> <span class="linenos" data-line="10"></span><span class="w"> </span><span class="o">~</span><span class="n">Array</span><span class="p">()</span><span class="w"> </span><span class="p">{</span> <span class="linenos" data-line="11"></span><span class="w"> </span><span class="k">delete</span><span class="p">[]</span><span class="w"> </span><span class="n">val</span><span class="p">;</span> <span class="linenos" data-line="12"></span><span class="w"> </span><span class="p">}</span> <span class="linenos" data-line="13"></span><span class="w"> </span><span class="n">Array</span><span class="o">&</span><span class="w"> </span><span class="k">operator</span><span class="o">=</span><span class="p">(</span><span class="k">const</span><span class="w"> </span><span class="n">Array</span><span class="o">&</span><span class="w"> </span><span class="n">rhs</span><span class="p">);</span><span class="w"> </span><span class="c1">// оператор присвоёваня копіёванём</span> <span class="linenos" data-line="14"></span><span class="w"> </span><span class="n">Array</span><span class="o">&</span><span class="w"> </span><span class="k">operator</span><span class="o">=</span><span class="p">(</span><span class="n">Array</span><span class="o">&&</span><span class="w"> </span><span class="n">rhs</span><span class="p">);</span><span class="w"> </span><span class="c1">// оператор присвоёваня переміщинём</span> <span class="linenos" data-line="15"></span><span class="w"> </span><span class="kt">double</span><span class="o">&</span><span class="w"> </span><span class="k">operator</span><span class="p">[](</span><span class="kt">size_t</span><span class="w"> </span><span class="n">i</span><span class="p">)</span><span class="w"> </span><span class="p">{</span> <span class="linenos" data-line="16"></span><span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="n">val</span><span class="p">[</span><span class="n">i</span><span class="p">];</span> <span class="linenos" data-line="17"></span><span class="w"> </span><span class="p">}</span> <span class="linenos" data-line="18"></span><span class="w"> </span><span class="k">const</span><span class="w"> </span><span class="kt">double</span><span class="o">&</span><span class="w"> </span><span class="k">operator</span><span class="p">[](</span><span class="kt">size_t</span><span class="w"> </span><span class="n">i</span><span class="p">)</span><span class="w"> </span><span class="k">const</span><span class="w"> </span><span class="p">{</span> <span class="linenos" data-line="19"></span><span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="n">val</span><span class="p">[</span><span class="n">i</span><span class="p">];</span> <span class="linenos" data-line="20"></span><span class="w"> </span><span class="p">}</span> <span class="linenos" data-line="21"></span> <span class="linenos" data-line="22"></span><span class="k">protected</span><span class="o">:</span> <span class="linenos" data-line="23"></span><span class="w"> </span><span class="n">std</span><span class="o">::</span><span class="kt">size_t</span><span class="w"> </span><span class="n">len</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">0</span><span class="p">;</span><span class="w"> </span><span class="c1">// ініціалізація поля</span> <span class="linenos" data-line="24"></span><span class="w"> </span><span class="kt">double</span><span class="o">*</span><span class="w"> </span><span class="n">val</span><span class="w"> </span><span class="p">{</span><span class="k">nullptr</span><span class="p">};</span> <span class="linenos" data-line="25"></span><span class="p">};</span> </pre></div><p>Нові можности C++ уключавут оголошіня у видови выражінь, перетворіня тіпу в виді функцій, операторы <code>new</code> і <code>delete</code>, тіп <code>bool</code>, удкликаня, розширене розуміня конштантности, пудставлямі функції, аргументы за замовчінём, переопреділіня, просторы імен, класы (уключавучи і вшыткы повязані із класами можности, такі ги наслідованя, функції-части, віртуалні функції, абштрактні класы тай конштрукторы), переопреділіня оператору, шаблоны, оператор <code>::</code>, убробку выйимку, дінамічну ідентіфікацію і многе инше. Язык C++ так само в многых трафунках май строго удносится д перевірці тіпу, як C. </p><p>У C++ появилися коментарі в вызирови двойитої косої лінії (<code>//</code>), котрі были у попередникови C — языкови <a href="/w/index.php?title=BCPL&action=edit&redlink=1" class="new" title="BCPL (такой сторінкы нїт)">BCPL</a>. </p><p>Дакотрі особинности C++ май пузно были перенесині до C, наприклад, ключові слова <code>const</code> тай <code>inline</code>, оголошіня у циклах <code>for</code> і коментарі в штилови C++ (<code>//</code>). У май пузнюй реалізації C так само были представлині можности, котрых не є у C++, наприклад макросы <code>va_arg</code> тай ізліпшина робота із масивами-штімованями. </p> <div class="mw-heading mw-heading3"><h3 id="C++_не_включат_у_ся_C"><span id="C.2B.2B_.D0.BD.D0.B5_.D0.B2.D0.BA.D0.BB.D1.8E.D1.87.D0.B0.D1.82_.D1.83_.D1.81.D1.8F_C"></span>C++ не включат у ся C</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=24" title="Едітовати секцію: C++ не включат у ся C" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=24" title="Редагувати вихідний код розділу: C++ не включат у ся C"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Невзиравучи на то, же груба часть кода C буде робоча і для C++, C++ не є надмножинов C і не включат го в себе. Існує і такый правильный для C код, котрый є неправильным для C++. То удлишує го уд <a href="/w/index.php?title=Objective_C&action=edit&redlink=1" class="new" title="Objective C (такой сторінкы нїт)">Objective C</a>, іщи єдного ізліпшиня C для <a href="/wiki/%D0%9E%D0%B1%D1%94%D0%BA%D1%82%D0%BE%D0%B2%D0%BE_%D0%BE%D1%80%D1%8C%D1%94%D0%BD%D1%82%D0%BE%D0%B2%D0%B0%D0%BD%D0%B5_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F" title="Обєктово орьєнтоване проґрамованя">ООП</a>, котре є надмножинов C. </p><p>Сут і другі рузности. Наприклад, C++ не дозволює кликати функцію main() в удну проґрамы, зато як у C то є припустиме. Окроме того, C++ є май строгый у дакотрых звіданях; наприклад, ун не допущує неявне переведіня тіпу миже не ізкапчаными тіпами указатилю і не дозволює хосновати функції, котрі іщи не были оголошені. </p><p> Ба й бульше, код, котрый є робочый для убох языку, може давати рузні выслідкы в залежности уд того, компілатор якого языка го товмачив. Наприклад, на бульшости платформ наслідувуча проґрама выведе «C», коли компілуєся компілатором C, і «C++», коли компілуєся компілатором C++. Такє ся діє зато, же в C сімболні конштанты (наприклад, <code>'a'</code>) мавут тіп <code>int</code>, а в C++ — тіп <code>char</code>, а розмір тых тіпу ся убыкло удрузнят.</p><div class="mw-highlight mw-highlight-lang-cpp mw-content-ltr" dir="ltr"><pre><span></span><span class="cp">#include</span><span class="w"> </span><span class="cpf"><stdio.h></span> <span class="kt">int</span><span class="w"> </span><span class="nf">main</span><span class="p">()</span> <span class="p">{</span> <span class="w"> </span><span class="n">printf</span><span class="p">(</span><span class="s">"%s</span><span class="se">\n</span><span class="s">"</span><span class="p">,</span><span class="w"> </span><span class="p">(</span><span class="k">sizeof</span><span class="p">(</span><span class="sc">'a'</span><span class="p">)</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="k">sizeof</span><span class="p">(</span><span class="kt">char</span><span class="p">))</span><span class="w"> </span><span class="o">?</span><span class="w"> </span><span class="s">"C++"</span><span class="w"> </span><span class="o">:</span><span class="w"> </span><span class="s">"C"</span><span class="p">);</span> <span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="mi">0</span><span class="p">;</span> <span class="p">}</span> </pre></div> <div class="mw-heading mw-heading3"><h3 id="Средства_C,_котрых_рекомендуєся_не_кывати"><span id=".D0.A1.D1.80.D0.B5.D0.B4.D1.81.D1.82.D0.B2.D0.B0_C.2C_.D0.BA.D0.BE.D1.82.D1.80.D1.8B.D1.85_.D1.80.D0.B5.D0.BA.D0.BE.D0.BC.D0.B5.D0.BD.D0.B4.D1.83.D1.94.D1.81.D1.8F_.D0.BD.D0.B5_.D0.BA.D1.8B.D0.B2.D0.B0.D1.82.D0.B8"></span>Средства C, котрых рекомендуєся не кывати</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=25" title="Едітовати секцію: Средства C, котрых рекомендуєся не кывати" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=25" title="Редагувати вихідний код розділу: Средства C, котрых рекомендуєся не кывати"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Подля зауважіня Страуструпа, «чим ліпше вы знаєте C, тым май тяжко вам буде убминути проґрамованя на C++ у штилёви C, гублячи при тум потенційні перевагы C++». Позад того ун дає слідувущый набор порекомендовань для проґрамісту на C, убы читаво убхосноватися перевагами C++: </p> <ul><li>Не хосновати макроопреділіня <code>#define</code>. На оголошіня конштант хосновати <code>const</code>, на ґрупы конштант (перечисліня) — <code>enum</code>, на пряме включіня функцій — <code>inline</code>, на означіня сімий функцій авадь тіпу — <code>template</code>.</li> <li>Не хосновати передчасові зявы ізмінных. Зява ізмінны в блокови, ди они управді ся хоснувут, і фурт єднати зявы із ініціалізаціёв.</li> <li>Удказатися уд хоснованя <code>malloc()</code><sup id="cite_ref-31" class="reference"><a href="#cite_note-31"><span class="cite-bracket">[</span>31<span class="cite-bracket">]</span></a></sup> у хосен оператора <code>new</code>, уд <code>realloc()</code><sup id="cite_ref-32" class="reference"><a href="#cite_note-32"><span class="cite-bracket">[</span>32<span class="cite-bracket">]</span></a></sup> — у хосен тіпа <code>vector</code>. Май безпечным буде хоснованя розумных указатилю, такых гий <code>shared_ptr</code> тай <code>unique_ptr</code>, што доступні уд єденадцятої верзії штандарта.</li> <li>Убминутися без безтіповых указатилю, аріфметікы указатилю, неявных приведінь тіпу, ізкапчань, окроме, може, низькорунёвого кода. Хосновати «нові» переведіня тіпу, што ліпше выражавут жаданя проґраміста і сут май безпечні.</li> <li>Рада до мінімума хоснованя масиву сімболу тай рядку у штилови C, замінявучи їх на тіпы <code>string</code> і <code>vector</code> із STL. Шуга не творити свої реалізації того, што уже є у штандартнуй бібліотеци.</li></ul> <div class="mw-heading mw-heading2"><h2 id="Розвуй_дале"><span id=".D0.A0.D0.BE.D0.B7.D0.B2.D1.83.D0.B9_.D0.B4.D0.B0.D0.BB.D0.B5"></span>Розвуй дале</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=26" title="Едітовати секцію: Розвуй дале" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=26" title="Редагувати вихідний код розділу: Розвуй дале"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Нынішня май актуална верзія <b>ISO/IEC 14882:2024</b> авадь <b><a href="/w/index.php?title=%D0%A1%2B%2B23&action=edit&redlink=1" class="new" title="С++23 (такой сторінкы нїт)">С++23</a></b><sup id="cite_ref-33" class="reference"><a href="#cite_note-33"><span class="cite-bracket">[</span>33<span class="cite-bracket">]</span></a></sup>,была дороблена у <a href="/wiki/%D0%A4%D0%B5%D0%B1%D1%80%D1%83%D0%B0%D1%80" title="Фебруар">фебруарови</a> <a href="/wiki/2023" title="2023">2023</a><sup id="cite_ref-34" class="reference"><a href="#cite_note-34"><span class="cite-bracket">[</span>34<span class="cite-bracket">]</span></a></sup>, слідувуща верзія, має не офіційне імня <b><a href="/w/index.php?title=C%2B%2B26&action=edit&redlink=1" class="new" title="C++26 (такой сторінкы нїт)">C++26</a></b>.<sup id="cite_ref-35" class="reference"><a href="#cite_note-35"><span class="cite-bracket">[</span>35<span class="cite-bracket">]</span></a></sup> </p> <div class="mw-heading mw-heading3"><h3 id="Сполочне_напрямліня_розвоя_C++"><span id=".D0.A1.D0.BF.D0.BE.D0.BB.D0.BE.D1.87.D0.BD.D0.B5_.D0.BD.D0.B0.D0.BF.D1.80.D1.8F.D0.BC.D0.BB.D1.96.D0.BD.D1.8F_.D1.80.D0.BE.D0.B7.D0.B2.D0.BE.D1.8F_C.2B.2B"></span>Сполочне напрямліня розвоя C++</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=27" title="Едітовати секцію: Сполочне напрямліня розвоя C++" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=27" title="Редагувати вихідний код розділу: Сполочне напрямліня розвоя C++"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>На думку автора языка Бярена Страуструпа<sup id="cite_ref-36" class="reference"><a href="#cite_note-36"><span class="cite-bracket">[</span>36<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-37" class="reference"><a href="#cite_note-37"><span class="cite-bracket">[</span>37<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-38" class="reference"><a href="#cite_note-38"><span class="cite-bracket">[</span>38<span class="cite-bracket">]</span></a></sup>, говорячи о дальшум розвою тай перспектівах языка, мож дашто вызначити: </p> <ul><li>У основному дальшый розвуй языка буде іти дорогов доповнінь до штандартної бібліотекы. Єдным із головных жрідел такых доповнінь є знана бібліотека <a href="/w/index.php?title=Boost&action=edit&redlink=1" class="new" title="Boost (такой сторінкы нїт)">Boost</a>.</li> <li>Міняня у ядрови языка не мавут приводити до ізмаліня уже досягнутої ефектівности C++. По никанёви Страуструпа, переважно є грубі важливі ізміны, котрі мавут реалный вплыв, ачим много малых правок, котрі можут ускладнити код і зробити язык тяжкым на учіня тай хоснованя.</li> <li>Основні путі дальшого розвоя C++ у май близькых годах уключавут розшыріня можностю і доробліня сполочного проґрамованя, стандартізацію механізму паралелної убробкы, а так само розвуй средств безпечного проґрамованя. До такых можностю надходят рузні перевіркы, безпечны переведіня тіпу, контролованя пудмінок і иншы технолоґії, котрі помагавут у писанёви стабільного і сполягливого кода.</li> <li>У рокаши C++ є спроєктованый і розвоюєся як <a href="/w/index.php?title=%D0%9C%D1%83%D0%BB%D1%82%D1%96%D0%BF%D0%B0%D1%80%D0%B0%D0%B4%D1%96%D2%91%D0%BC%D0%BE%D0%B2%D1%8B%D0%B9_%D1%8F%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F&action=edit&redlink=1" class="new" title="Мултіпарадіґмовый язык проґрамованя (такой сторінкы нїт)">мултіпарадіґмовый язык</a>, што значит, же ун є погынавый і дозволяє проґрамістам выборно хосновати рузні пудходы і методолоґії. Ун бере елементы із рузных штилю проґрамованя, айбо їх адаптує так, штобы были ефектівні на руни компілованого языка, што означат выщу руню оконавської продуктівности. Того в будучности не є вылучино, же до C++ будут додані елементы функціоналного проґрамованя, автоматічне збираня нехари тай инакі механізмы, котрі тепирь не сут в языкови. Айбо вшиткы такі зміны будут зроблині на основі вже існувучого компілованого пудхода, без порушіня прінціпу продуктівности.</li> <li>Ходь формално єдным із основных прінціпу C++ є засокочіня сполочности із языком C, у реалности штандартізаційны комітеты C тай C++ не мавут взайимодій. Міняня, котрі они уносят, не лиш не є згоджині, айбо даколи прямо противорічат єдны другым із ідеолоґічного бока. Наприклад, елементы, котрі нові верзії C додавут прямо до ядра языка, у C++ сут вынесині до штандартної бібліотекы. Такыми елементами є, наприклад, дінамічні масивы, масивы із фіксованымы границями, а так само засобы паралелної убробкы. Страуструп лічит, же споєня розробкы C і C++ принесло бы грубі выгоды, айбо то є малореалістічно із політічных і орґанізаційных причин. Того в перспектіві практічна сполочность миже C тай C++ буде із часом слабіти, што означає, же коды, написані на чистум C, будут кождый раз май тяжко прямо компіловати і хосновати в C++ без модіфікацій.</li></ul> <div class="mw-heading mw-heading3"><h3 id="Штандарт_C++11:_доповніня_у_ядрови_языка"><span id=".D0.A8.D1.82.D0.B0.D0.BD.D0.B4.D0.B0.D1.80.D1.82_C.2B.2B11:_.D0.B4.D0.BE.D0.BF.D0.BE.D0.B2.D0.BD.D1.96.D0.BD.D1.8F_.D1.83_.D1.8F.D0.B4.D1.80.D0.BE.D0.B2.D0.B8_.D1.8F.D0.B7.D1.8B.D0.BA.D0.B0"></span>Штандарт C++11: доповніня у ядрови языка</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=28" title="Едітовати секцію: Штандарт C++11: доповніня у ядрови языка" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=28" title="Редагувати вихідний код розділу: Штандарт C++11: доповніня у ядрови языка"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li>Ясно вызначині конштантны функції тай выражіня <code>constexpr</code>.</li> <li>Універсалне ініціалізованя.</li> <li>Конштрукторы і операторы присвойиня із семантіков переносу. Выведіня тіпу.</li></ul> <dl><dd><dl><dd>Для хоснуваня у шаблонах, ди тяжко задати конкретный тіп ізмінної, уведені два нові механізмы: ізмінні тіпа <code>auto</code> і опис <code>decltype</code>.</dd></dl></dd></dl> <ul><li>Цикл по колекції</li></ul> <dl><dd><dl><dd>Самарно многым нынішньым языкам, у C++ уведеный цикл «по колекції» у форматови: <code>for (type &x: array) {...}</code>. Туй тіло цикла ся оконує для кождого елемента колекції <code>array</code>, а <code>x</code> у каждуй ітерації буде удкликатися на актуалный елемент колекції. Як колекцію мож видіти C-масив авадь ходь-якый контейнер із штандартної бібліотекы, котрый має ітераторы <code>begin</code> тай <code>end</code>.</dd></dl></dd></dl> <ul><li>Лямбда-выражіня</li></ul> <dl><dd><dl><dd>Додана можность задавати лямбда-выражіня (анонімні функції, што ся задают прямо в місті хоснованя). Такі функції можут залежати уд позапросторовых змінных (замыканя). Лямбда-выражіня мож присвойити зміннуй і хосновати усюды, ди гія функція релевантного тіпа, наприклад, у алґорітмах штандартної бібліотекы.</dd></dl></dd></dl> <ul><li>Ізміны в описови віртулных методу</li></ul> <dl><dd><dl><dd>Доданый неповинный модіфікатор <code>override</code>, котрый хоснувут при описови метода, што заміщує віртуалный метод утцёвського класа. Позад хоснованя <code>override</code> компілаторови мусай перевіряти, ци є в утцёвському класови метод із таков же сіґнатуров. Доданый тоже модіфікатор <code>final</code>, котрый, як і в Java, недозволяє подальше заміщованя метода. Так само мож задати <code>final</code> для класа — тогды уд него вже не можут наслідовати ся другі класы.</dd></dl></dd></dl> <ul><li>Додана можность описа <a href="/w/index.php?title=%D0%92%D0%B0%D1%80%D1%96%D0%B0%D1%82%D1%96%D0%B2%D0%BD%D1%8B%D0%B9_%D1%88%D0%B0%D0%B1%D0%BB%D0%BE%D0%BD&action=edit&redlink=1" class="new" title="Варіатівный шаблон (такой сторінкы нїт)">варіатівных шаблону</a>.</li> <li>Усякі сінтаксічні доповніня.</li></ul> <dl><dd><dl><dd>Уведене ключове слово <code>nullptr</code>, што представляє конштанту — нуловый указник. Были внесені зміны у семантіку і, частично, у сінтаксіс перечислінь і споєня. Додана можность творити сокочені перечисліня (type-safe enumerations), а споєня тепирь мавут май мало убграничінь у своюй штруктурі. Кроме того, компілатор тепирь має правильно парсити код із множинными заперавучыми кутовыми дужками «<code>>></code>», што ужывані у вкладеных шаблонных конштрукціях. Май скоро «<code>>></code>» автоматічно приймалося ги оператор побітового ізсува вправо, того миже знаками <code>></code> гія было вставляти пропускы авадь ізносы рядка.</dd></dl></dd></dl> <div class="mw-heading mw-heading2"><h2 id="Приклад_проґрам"><span id=".D0.9F.D1.80.D0.B8.D0.BA.D0.BB.D0.B0.D0.B4_.D0.BF.D1.80.D0.BE.D2.91.D1.80.D0.B0.D0.BC"></span>Приклад проґрам</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=29" title="Едітовати секцію: Приклад проґрам" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=29" title="Редагувати вихідний код розділу: Приклад проґрам"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <div class="mw-heading mw-heading3"><h3 id="Приклад_№_1"><span id=".D0.9F.D1.80.D0.B8.D0.BA.D0.BB.D0.B0.D0.B4_.E2.84.96_1"></span>Приклад № 1</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=30" title="Едітовати секцію: Приклад № 1" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=30" title="Редагувати вихідний код розділу: Приклад № 1"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div><p> Се приклад проґрамы <a href="/w/index.php?title=Hello,_world!&action=edit&redlink=1" class="new" title="Hello, world! (такой сторінкы нїт)">Hello, world!</a>, котра выводит ізвістку в <a href="/w/index.php?title=%D0%86%D0%BD%D1%82%D0%B5%D1%80%D1%84%D0%B5%D0%B9%D1%81_%D0%BA%D0%BE%D0%BC%D0%B0%D0%BD%D0%B4%D0%BD%D0%BE%D0%B3%D0%BE_%D1%80%D1%8F%D0%B4%D0%BA%D0%B0&action=edit&redlink=1" class="new" title="Інтерфейс командного рядка (такой сторінкы нїт)">консол</a>, хоснувучи штандартну бібліотеку, і окончуєся.</p><div class="mw-highlight mw-highlight-lang-cpp mw-content-ltr" dir="ltr"><pre><span></span><span class="cp">#include</span><span class="w"> </span><span class="cpf"><iostream></span> <span class="c1">// Імпортуєме всі убявліня у просторови імен "std" у ґлобалный простур імен.</span> <span class="k">using</span><span class="w"> </span><span class="k">namespace</span><span class="w"> </span><span class="nn">std</span><span class="p">;</span> <span class="kt">int</span><span class="w"> </span><span class="nf">main</span><span class="p">()</span> <span class="p">{</span> <span class="w"> </span><span class="n">cout</span><span class="w"> </span><span class="o"><<</span><span class="w"> </span><span class="s">"Hello, world!"</span><span class="w"> </span><span class="o"><<</span><span class="w"> </span><span class="n">endl</span><span class="p">;</span> <span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="mi">0</span><span class="p">;</span> <span class="p">}</span> </pre></div> <div class="mw-heading mw-heading3"><h3 id="Приклад_№_2"><span id=".D0.9F.D1.80.D0.B8.D0.BA.D0.BB.D0.B0.D0.B4_.E2.84.96_2"></span>Приклад № 2</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=31" title="Едітовати секцію: Приклад № 2" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=31" title="Редагувати вихідний код розділу: Приклад № 2"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div><p> Тепирішньый C++ позволює рішати май легкым способом і май тяжкі задачі. Тот приклад, окроме другого, показує хоснованя контейнеру із штандартної бібліотекы шаблону (<a href="/w/index.php?title=%D0%A8%D1%82%D0%B0%D0%BD%D0%B4%D0%B0%D1%80%D1%82%D0%BD%D0%B0_%D0%B1%D1%96%D0%B1%D0%BB%D1%96%D0%BE%D1%82%D0%B5%D0%BA%D0%B0_%D1%88%D0%B0%D0%B1%D0%BB%D0%BE%D0%BD%D1%83&action=edit&redlink=1" class="new" title="Штандартна бібліотека шаблону (такой сторінкы нїт)">STL</a>).</p><div class="mw-highlight mw-highlight-lang-cpp mw-content-ltr" dir="ltr"><pre><span></span><span class="cp">#include</span><span class="w"> </span><span class="cpf"><iostream></span><span class="c1"> // подля хосонованя std::cout</span> <span class="cp">#include</span><span class="w"> </span><span class="cpf"><vector></span><span class="c1"> // має у собі дінамічный масив</span> <span class="cp">#include</span><span class="w"> </span><span class="cpf"><map></span><span class="c1"> // має в собі тіп даных словарь</span> <span class="cp">#include</span><span class="w"> </span><span class="cpf"><string></span> <span class="k">using</span><span class="w"> </span><span class="k">namespace</span><span class="w"> </span><span class="nn">std</span><span class="p">;</span> <span class="kt">int</span><span class="w"> </span><span class="nf">main</span><span class="p">()</span> <span class="p">{</span><span class="w"> </span> <span class="w"> </span><span class="c1">// Обявляєме асоціатівный контейнер із рядковыми ключами і даными в вызирі вектору рядку.</span> <span class="w"> </span><span class="n">map</span><span class="o"><</span><span class="n">string</span><span class="p">,</span><span class="w"> </span><span class="n">vector</span><span class="o"><</span><span class="n">string</span><span class="o">></span><span class="w"> </span><span class="o">></span><span class="w"> </span><span class="n">items</span><span class="p">;</span> <span class="w"> </span><span class="c1">// Додаме в сись асоціатівный контейнер пару людий і даме їм дакулько предмету.</span> <span class="w"> </span><span class="n">items</span><span class="p">[</span><span class="s">"Anya"</span><span class="p">].</span><span class="n">push_back</span><span class="p">(</span><span class="s">"scarf"</span><span class="p">);</span> <span class="w"> </span><span class="n">items</span><span class="p">[</span><span class="s">"Dmitry"</span><span class="p">].</span><span class="n">push_back</span><span class="p">(</span><span class="s">"tickets"</span><span class="p">);</span> <span class="w"> </span><span class="n">items</span><span class="p">[</span><span class="s">"Anya"</span><span class="p">].</span><span class="n">push_back</span><span class="p">(</span><span class="s">"puppy"</span><span class="p">);</span> <span class="w"> </span><span class="c1">// Перебереме всі обєкты в контейнері</span> <span class="w"> </span><span class="k">for</span><span class="p">(</span><span class="k">const</span><span class="w"> </span><span class="k">auto</span><span class="o">&</span><span class="w"> </span><span class="n">person</span><span class="w"> </span><span class="o">:</span><span class="w"> </span><span class="n">items</span><span class="p">)</span><span class="w"> </span><span class="p">{</span> <span class="w"> </span><span class="c1">// person - то є пара із двох обєкту: person.first - то го імня,</span> <span class="w"> </span><span class="c1">// person.second - то є список го предмету (вектор рядку)</span> <span class="w"> </span><span class="n">cout</span><span class="w"> </span><span class="o"><<</span><span class="w"> </span><span class="n">person</span><span class="p">.</span><span class="n">first</span><span class="w"> </span><span class="o"><<</span><span class="w"> </span><span class="s">" is carrying "</span><span class="w"> </span><span class="o"><<</span><span class="w"> </span><span class="n">person</span><span class="p">.</span><span class="n">second</span><span class="p">.</span><span class="n">size</span><span class="p">()</span><span class="w"> </span><span class="o"><<</span><span class="w"> </span><span class="s">" items"</span><span class="w"> </span><span class="o"><<</span><span class="w"> </span><span class="n">endl</span><span class="p">;</span> <span class="w"> </span><span class="p">}</span> <span class="p">}</span> </pre></div><p> У тум прикладі, для простоты, імпортувутся вшиткі імена із простора імен <code>std</code>. Но в реалных проґрамах так робити ся не рекомендує, бо можут зотворитися конфлікты імен, коли рузны бібліотекы мавут єднакі назвы обєкту. Язык позволяє імпортовати окромы обєкты із простора імен, же бы лем то-ты, котрі дійсно гія, были доступні у кодови без явного зазначіня <code>std::</code>.</p><div class="mw-highlight mw-highlight-lang-cpp mw-content-ltr" dir="ltr"><pre><span></span><span class="k">namespace</span><span class="w"> </span><span class="nn">Foo</span> <span class="p">{</span> <span class="w"> </span><span class="k">const</span><span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">x</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">5</span><span class="p">;</span> <span class="p">}</span> <span class="k">const</span><span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">y</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">Foo</span><span class="o">::</span><span class="n">x</span><span class="p">;</span> </pre></div><div class="mw-highlight mw-highlight-lang-cpp mw-content-ltr" dir="ltr"><pre><span></span><span class="cp">#include</span><span class="w"> </span><span class="cpf"><vector></span> <span class="kt">int</span><span class="w"> </span><span class="nf">main</span><span class="p">()</span> <span class="p">{</span> <span class="w"> </span><span class="k">using</span><span class="w"> </span><span class="n">std</span><span class="o">::</span><span class="n">vector</span><span class="p">;</span> <span class="w"> </span><span class="n">vector</span><span class="o"><</span><span class="kt">int</span><span class="o">></span><span class="w"> </span><span class="n">my_vector</span><span class="p">;</span> <span class="p">}</span> </pre></div><p>У C++ (ги у C), коли хоснованя проґрамы доходит до кунця функції <code>main()</code>, то-то рунозначно команді <code>return 0;</code>. То значит, што проґрамі не гія явне вертаня <code>0</code> в кунци <code>main()</code>, бо компілатор додаст то автоматічно. Но такє правило не діє для ходь-якої инакої функції, окром <code>main()</code>, ди все гія явно вказати значіня, котре ся має вертати. </p><div class="mw-heading mw-heading2"><h2 id="Ізрунёваня_із_алтернатівными_языками"><span id=".D0.86.D0.B7.D1.80.D1.83.D0.BD.D1.91.D0.B2.D0.B0.D0.BD.D1.8F_.D1.96.D0.B7_.D0.B0.D0.BB.D1.82.D0.B5.D1.80.D0.BD.D0.B0.D1.82.D1.96.D0.B2.D0.BD.D1.8B.D0.BC.D0.B8_.D1.8F.D0.B7.D1.8B.D0.BA.D0.B0.D0.BC.D0.B8"></span>Ізрунёваня із алтернатівными языками</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=32" title="Едітовати секцію: Ізрунёваня із алтернатівными языками" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=32" title="Редагувати вихідний код розділу: Ізрунёваня із алтернатівными языками"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Сут дакулько досліжінь, у котрых пробовали зробити бульш-менш обєктівне зрунёваня всякых языку проґрамованя, миже котрых є і C++. У тых досліжінях аналізовалися рузні аспекты, такі гий продуктівность коду, удобство писаня проґрам, можности оптімізації, доступ д штандартным бібліотек тай инші характерістікы, котрі важливі для проґрамісту і розвойнику проґрамного засобованя. </p> <ul><li>У науковуй статі «Haskell vs. Ada vs. C++ vs. Awk vs. …» Пауля Гудака і Марка Джонса<sup id="cite_ref-haskell4_39-0" class="reference"><a href="#cite_note-haskell4-39"><span class="cite-bracket">[</span>39<span class="cite-bracket">]</span></a></sup> представлиный звід про досліджіня ряда імператавных і функціоналных языку на прикладі рішіня модельної задачі быстрого прототіпованя ГІС-сістемы воєнного призначіня.</li> <li>В инакуй науковуй роботі — «DSL implementation in metaocaml, template haskell, and C++» — чотыри авторы<sup id="cite_ref-40" class="reference"><a href="#cite_note-40"><span class="cite-bracket">[</span>40<span class="cite-bracket">]</span></a></sup> методічно досліжувут можности C++ і двох функціоналных языку у роли базовых інструменту для <a href="/w/index.php?title=%D0%AF%D0%B7%D1%8B%D0%BA%D0%BE%D0%B2%D0%BE-%D0%BE%D1%80%D1%8C%D1%94%D0%BD%D1%82%D0%BE%D0%B2%D0%B0%D0%BD%D0%B5_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F&action=edit&redlink=1" class="new" title="Языково-орьєнтоване проґрамованя (такой сторінкы нїт)">языково-орьєнтованого проґрамованя</a> із методом породжувучого кода.</li> <li>В досліджині Лутца Прехелта<sup id="cite_ref-perhelt2_41-0" class="reference"><a href="#cite_note-perhelt2-41"><span class="cite-bracket">[</span>41<span class="cite-bracket">]</span></a></sup> аналізувутся сім языку (C, C++, Java, Perl, Python, Rexx, Tcl) у контекстови написаня простої проґрамы, котра переробляє телефонні нумера на слова за даякыми правилами.</li> <li>У статі Девіда Велера «Ada, C, C++, and Java vs. The Steelman»<sup id="cite_ref-steelman_42-0" class="reference"><a href="#cite_note-steelman-42"><span class="cite-bracket">[</span>42<span class="cite-bracket">]</span></a></sup> проводится ізруняня языку Ада, C++, C і Java із документом «<a href="/w/index.php?title=Steelman&action=edit&redlink=1" class="new" title="Steelman (такой сторінкы нїт)">Steelman</a>» — списком потреб до языка для воєнных убудованых сістем, котрый быв розробленый у <a href="/wiki/1978" title="1978">1978 годі</a> Міністерством сокочіня <a href="/wiki/%D0%A1%D0%BF%D0%BE%D1%94%D0%BD%D1%8B_%D0%A8%D1%82%D0%B0%D1%82%D1%8B_%D0%90%D0%BC%D0%B5%D1%80%D0%B8%D1%86%D1%8C%D0%BA%D1%8B" title="Споєны Штаты Америцькы">США</a>. Ходь документ ужек устарів і не бере до увагы тепрішні можности языку, ізруняня показує, што C++ не так силно рузнится уд языку-конкуренту в плані необходимых можностю для промысловых розробок.</li> <li>Статя Метю Формента і Міхаеля Ґіллінґса<sup id="cite_ref-bioinfartcl_43-0" class="reference"><a href="#cite_note-bioinfartcl-43"><span class="cite-bracket">[</span>43<span class="cite-bracket">]</span></a></sup> описує досліжіня<sup id="cite_ref-bioinfbench_44-0" class="reference"><a href="#cite_note-bioinfbench-44"><span class="cite-bracket">[</span>44<span class="cite-bracket">]</span></a></sup> реалізації на шости языках (C++, C, C#, Java, Perl, Python) трёх шпеціфічных алґорітму, што хоснувутся у біоінформатіци: <a href="/w/index.php?title=%D0%9C%D0%B5%D1%82%D0%BE%D0%B4_%D0%BC%D0%B0%D0%B9%D0%B1%D0%BB%D0%B8%D0%B7%D1%8C%D0%BA%D1%8B%D1%85_%D1%81%D0%BE%D1%81%D1%96%D0%B4%D1%83&action=edit&redlink=1" class="new" title="Метод майблизькых сосіду (такой сторінкы нїт)">метод майблизькых сосіду</a>, ґлобалне <a href="/w/index.php?title=%D0%92%D1%8B%D1%80%D1%83%D0%BD%D1%91%D0%B2%D0%B0%D0%BD%D1%8F_%D0%BF%D0%BE%D1%81%D0%BB%D1%96%D0%B4%D0%BE%D0%B2%D0%BD%D0%BE%D1%81%D1%82%D1%8E&action=edit&redlink=1" class="new" title="Вырунёваня послідовностю (такой сторінкы нїт)">вырунёваня послідовностю</a> (<a href="/w/index.php?title=%D0%90%D0%BB%D2%91%D0%BE%D1%80%D1%96%D1%82%D0%BC_%D0%9D%D1%96%D0%B4%D0%BB%D0%BC%D0%B0%D0%BD%D0%B0_%E2%80%94_%D0%92%D1%83%D0%BD%D1%88%D0%B0&action=edit&redlink=1" class="new" title="Алґорітм Нідлмана — Вунша (такой сторінкы нїт)">алґорітм Нідлмана — Вунша</a>) і <a href="/w/index.php?title=%D0%9F%D0%B0%D1%80%D1%81%D1%96%D0%BD%D2%91&action=edit&redlink=1" class="new" title="Парсінґ (такой сторінкы нїт)">парсінґ</a> выходных даных <a href="/w/index.php?title=BLAST&action=edit&redlink=1" class="new" title="BLAST (такой сторінкы нїт)">BLAST</a>.</li></ul> <div class="mw-heading mw-heading3"><h3 id="C++_тай_Ада"><span id="C.2B.2B_.D1.82.D0.B0.D0.B9_.D0.90.D0.B4.D0.B0"></span>C++ тай Ада</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=33" title="Едітовати секцію: C++ тай Ада" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=33" title="Редагувати вихідний код розділу: C++ тай Ада"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p><a href="/wiki/%D0%90%D0%B4%D0%B0_(%D1%8F%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F)" title="Ада (язык проґрамованя)">Язык Ада</a> самарає на C++ за можностями і сферов хоснованя: то є компілованый штруктурный язык із обєктно-орьєнтованым розширінём (то-та ж модел «Алґол із класами», што і в C++), має штатічну тіпізацію, пудпорює убобщене проґрамованя і призначиный для розвоя грубых і тяжкых проґрамных сістем. Айбо ідеолоґічно Ада є сильно другым языком: якшто C++ розвоююєся ги універсалный інструмент для рузных задач, то Ада была спроєктована шпеціально пуд жаданя выробнику крітічно важливого проґрамного засобованя із высокыми штандартами надійности, што выразилося на ї сінтаксісі тай семантіци. </p><p>Прямых ізрунянь ефектівности кода в Аді і C++ немного. У ужек упомняненуй статі <sup id="cite_ref-haskell2_45-0" class="reference"><a href="#cite_note-haskell2-45"><span class="cite-bracket">[</span>45<span class="cite-bracket">]</span></a></sup>рішіня моделної задачи на Аді дало код, што быв приближно на 30% май куртый (у рядках), чим у C++. Ізрунёваня самых же языку проводилися у рузных жрідлах. Наприклад, у статті Джіма Роджерса на AdaHome<sup id="cite_ref-rogers2_46-0" class="reference"><a href="#cite_note-rogers2-46"><span class="cite-bracket">[</span>46<span class="cite-bracket">]</span></a></sup> наведино бульш 50 пункту удрузнинь миже языками, і бульшость із них у хосен Ады (бульше можностю, нагынавчость повожіня, май мало можность хыбы). Ходь даякі твержіня стороннику Ады перичні авадь ужек пристаріли, убобщено мож зробити выслідок: </p> <ul><li>Сінтакс Ады є овер строгый, ги у C++. Язык жадат додержоватися дісціпліны проґрамованя, не пудпорює «проґрамістські фіґлі», айбо стімулує писаня простого, лоґічного і порозумілого кода, котрый є май легко пудпорёвати.</li> <li>На розділ уд C++, Ада є барз тіпобезпечна. Розвойина сістема тіпів позволює при додержанёви правил їх оголошіня і хоснованя майвеце контроловати коректность роботы із датами і сокотити проґраму уд нежаданых хыб. Автоматічне перероліня тіпу є звеличине на нич.</li> <li>Указатилі в Аді сут контроловані май строго, ги у C++, а адресна аріфметіка є доступна лем через окрему сістемову бібліотеку.</li> <li>Наставитеильні модулы Ады за свойыми можностями сут самарні на шаблоны у C++, айбо забезпечувут ліпшый контрол.</li> <li>Ада має в язык убудовану модуларность і штандартізовану сістему розділеної компілації, зато C++ хоснує включованя текстовых файлу і вонкашні методы кроманёваня компілаціёв і складанём проґрам.</li> <li>Убудована многозадачность Ады має в собі паралелні задачы і механізм їх комунікації (вступы, рандеву, оператор <code>select</code>). У C++ сут то-ты можности забезпечені лем через бібліотекы.</li> <li>Ада має строгый штандарт, што дає ліпшу переносимость проґрамового забезпечіня на рузны платформы.</li></ul> <p>У статі Штефена Цейґера із компанії <a href="/w/index.php?title=Rational_Software&action=edit&redlink=1" class="new" title="Rational Software (такой сторінкы нїт)">Rational Software Corporation</a><sup id="cite_ref-47" class="reference"><a href="#cite_note-47"><span class="cite-bracket">[</span>47<span class="cite-bracket">]</span></a></sup> ся ствержує, же робота на Аді є на 60% май дешево, чим на иншых языках, приводит ід зотворіню кода, котрый має в 9 раз май мало хыб, чим код написаный языком Цы. Ходь і то-ты выслідкы не є прямо ты же самі для C++, ун є інтересный, бо много із хыб C++ ун взяв уд Цы. </p> <div class="mw-heading mw-heading3"><h3 id="C++_тай_Java"><span id="C.2B.2B_.D1.82.D0.B0.D0.B9_Java"></span>C++ тай Java</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=34" title="Едітовати секцію: C++ тай Java" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=34" title="Редагувати вихідний код розділу: C++ тай Java"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Java ся не може лічити же повноставна заміна C++, бо є зотворена гий безпечный язык із легшым зачатковым рунём, орьєнтоваый на зотворіня прикладных аплікацій із грубов можностёв преносимости<sup id="cite_ref-48" class="reference"><a href="#cite_note-48"><span class="cite-bracket">[</span>48<span class="cite-bracket">]</span></a></sup>. Она ся не годит для дакотрых роду проґрам, котрі ся роблят у C++. Айбо в окромых свойых областях в Java є реална конкурентція C++. </p><p>Головні передности Java: </p> <ul><li><b>Безпека:</b> Недоступность хоснованя указатилю і адресної аріфметікы, автоматічне кроманёваня тямов із ґарбадж-колектором, убудовані засобы, котрі сокотят перед май пошириными хыбами проґрам C++, гий є переповніня буфера авадь выхуд за гранмці масива.</li> <li>Наявность розробленої сістемы модулу і розділеної компілації, котра є значно скурша і май мало пудвавучас д хыбам, як препроцесор і особна зборка C++.</li> <li>Повна штандардізація і оконаня у віртуалнуй машині, розвойите окружіня, включавучи бібліотекы про ґрафіку, хосноватильськый інтерфейс, доступ д базам даных і иншым тіповым задачам, чим є забезпечена правдива многоплатформность.</li> <li>Убудована многопоточность.</li> <li>Обєктна пудсістема Java є у разы май блища д фундаменталному прінціпу ООП «вшитко є обєкт», ги у C++. Інтерфейсы позволявут здобыти векшину предностий множинного наслідованя без ёго неґатівных ефекту.</li> <li>Рефлекція є май далекосяжна, ги у C++, і позволює у реалному часови дефініціёвати і міняти штруктуру обєкту пуд час роботы проґрамы.</li></ul> <p>Но хоснованя ґарбадж-колектора і віртуалної машины лишає тяжко поборимі обмежіня. Проґрамы на Java сполочно сут май помалі, їм гія дуже много тямы, а віртуална машина ізолює проґраму уд операчної сістемы, што робит низкорунёве проґрамованя неможным. </p><p>Емпірічне досліджіня<sup id="cite_ref-perhelt3_49-0" class="reference"><a href="#cite_note-perhelt3-49"><span class="cite-bracket">[</span>49<span class="cite-bracket">]</span></a></sup> не найшло грубу рузню у шустрости розробкы на C++ тай Java. Инше досліджіня<sup id="cite_ref-bioinfartcl4_50-0" class="reference"><a href="#cite_note-bioinfartcl4-50"><span class="cite-bracket">[</span>50<span class="cite-bracket">]</span></a></sup> указало, же думаня о грубых рузнях у шустрости оконаня кода на тых языках не є фурт правдиве: у двох із трёх тесту шустрость оконаня Java- тай C++-аплікацій была доста порунима. Зато Java є май лаконічна – обєм кода є май малый на 10-15%. </p> <div class="mw-heading mw-heading3"><h3 id="C++_тай_C"><span id="C.2B.2B_.D1.82.D0.B0.D0.B9_C"></span>C++ тай C</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=35" title="Едітовати секцію: C++ тай C" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=35" title="Редагувати вихідний код розділу: C++ тай C"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p><b>Оріґіналный Цы</b> дале ся розвойит, і на нему ся зотворявут много грубых проєкту: є головным языком проґрамованя подля операчных сістем, на нему написані бавкові енґіні многых дінамічных бавок, як і груба кулькость прикладных аплікацій. Дакотрі шпеціалісты повідавут, же заміна Цы на C++ не робит процес розробкы май ефектівным, ай наопак убтяжує проєкт, меншит го надійность і пудвышує наклады на пудпору. У частности: </p> <ul><li>За думанём Лінуса Торвалдса, «C++ заставлює до писаня … грубого обєма кода, котрый не має прінціпійного значіня із никаня функціоналности проґрамы».</li> <li>Пудпора ООП, шаблоны і STL не сут рішавучов предностёв C++, бо вшитко, на што ся хоснувут, мож вырішити і хоснованём Цы. При тум ся вылучавут розширіня кода, а даякє убтяжіня, котре є далеко не фурт гія, компензуєся векшов флексібілітов, май простым тестованём, і ліпшыми перформанцными характерістіками.</li> <li>Автоматізація доступа ід тями в C++ повышує затраты тямы і чинит роботу проґрам помалов.</li> <li>Хоснованя вылучінь у C++ заставлює слідити <a href="/w/index.php?title=RAII&action=edit&redlink=1" class="new" title="RAII (такой сторінкы нїт)">RAII</a>, што веде до звеличіня оконаных файлу і меншіня шустрости проґрам. Додаткові тягкости ся появлявут у паралелных і дістрібутівных проґрамах. Тым є інтересне, же кодінґ-штандарт C++ у компанії <a href="/w/index.php?title=Google&action=edit&redlink=1" class="new" title="Google (такой сторінкы нїт)">Google</a> прямо заказує хоснованя вылучінь<sup id="cite_ref-googlesg_51-0" class="reference"><a href="#cite_note-googlesg-51"><span class="cite-bracket">[</span>51<span class="cite-bracket">]</span></a></sup>.</li> <li>Код на C++ є май тяжкый на розуміня і тестованя, ёго дебуґованя є май тяжкє позад хоснованя тяжкый ієрархій класу із наслідованём і шаблонами. Додатково, в розвойницькых міліях C++ ся вказує веце хыб, і в компілаторах, і в бібліотеках.</li> <li>Многі детайлі повожіня кода не сут шпеціфіковані штандартом C++, што знижує ёго портовалность і може быти причинов тяжконаходимых хыб.</li> <li>Кваліфікованых проґрамісту на Цы є у разы веце, гий на C++.</li></ul> <p>Не є пересідчивых даных о предности C++ перед Цы ні по ефектівности проґрамісту, ні по особностям проґрам. Ходь сут досліжіня<sup id="cite_ref-52" class="reference"><a href="#cite_note-52"><span class="cite-bracket">[</span>52<span class="cite-bracket">]</span></a></sup>, котрі твердят, же проґрамісты на Цы тратят около 30-40 % сполочного часа розробкы (не рахуючи выпраліня хыб) на кроманёваня тямов, сполочна ефектівность розробнику<sup id="cite_ref-haskell3_53-0" class="reference"><a href="#cite_note-haskell3-53"><span class="cite-bracket">[</span>53<span class="cite-bracket">]</span></a></sup> Цы тай C++ є ізрунима. </p><p>У низькорунёвум проґрамованёви грубинська часть новых можностю C++ ся оказує нехоснована позад ізбульшіня режійных выдатку: віртуалны функції жадавут дінамічне вызначіня актуалної адресы (RVA), шаблоны ведут до розширіня кода і понижіня можностю оптімізації, <a href="/w/index.php?title=%D0%91%D1%96%D0%B1%D0%BB%D1%96%D0%BE%D1%82%D0%B5%D0%BA%D0%B0_%D1%87%D0%B0%D1%81%D0%B0_%D0%BE%D0%BA%D0%BE%D0%BD%D0%B0%D0%BD%D1%8F&action=edit&redlink=1" class="new" title="Бібліотека часа оконаня (такой сторінкы нїт)">бібліотека часа оконаня</a> (RTL) є велика, а удказ уд ниї лишат векшины можностю C++ (ходь бы позад недоступности операцій <code>new</code>/<code>delete</code>). У выслідках проґрамістови мусай убграничити ся на функціонал, унаслідованый уд Цы, што робит хоснованя C++ безцільным: Єдиный способ мати добрый, ефектівный, низькорунёвый і портованый C++ зводится ід тому, убы ся убграничитися вшисткым тым, котре є легко доступне в Цы. А убграничіня проєкта границями Цы буде значити, же го не выметати, і же буде доступно много проґрамісту, котрі добрі розумівут низькорунёві особинности і не удказувутся уд них позад дурної моды на «обєктні моделі». </p><p> … коли ефектівность є першорядна, «перевагы» C++ будут грубов хыбов.</p><div class="ts-Конец_цитаты-source">— <cite><a href="https://ru.wikipedia.org/wiki/%D0%A2%D0%BE%D1%80%D0%B2%D0%B0%D0%BB%D1%8C%D0%B4%D1%81,_%D0%9B%D0%B8%D0%BD%D1%83%D1%81" class="extiw" title="ru:Торвальдс, Линус">Линус Торвальдс</a>,<sup id="cite_ref-autogenerated1_54-0" class="reference"><a href="#cite_note-autogenerated1-54"><span class="cite-bracket">[</span>54<span class="cite-bracket">]</span></a></sup></cite></div> <div class="mw-heading mw-heading3"><h3 id="C++_і_функціоналні_тай_скріптові_языкы"><span id="C.2B.2B_.D1.96_.D1.84.D1.83.D0.BD.D0.BA.D1.86.D1.96.D0.BE.D0.BD.D0.B0.D0.BB.D0.BD.D1.96_.D1.82.D0.B0.D0.B9_.D1.81.D0.BA.D1.80.D1.96.D0.BF.D1.82.D0.BE.D0.B2.D1.96_.D1.8F.D0.B7.D1.8B.D0.BA.D1.8B"></span>C++ і функціоналні тай скріптові языкы</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=36" title="Едітовати секцію: C++ і функціоналні тай скріптові языкы" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=36" title="Редагувати вихідний код розділу: C++ і функціоналні тай скріптові языкы"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>У єдному експеріментови<sup id="cite_ref-haskell_55-0" class="reference"><a href="#cite_note-haskell-55"><span class="cite-bracket">[</span>55<span class="cite-bracket">]</span></a></sup> скріптові і функціоналны языкы, особливо <a href="/w/index.php?title=Haskell&action=edit&redlink=1" class="new" title="Haskell (такой сторінкы нїт)">Haskell</a>, показали 2-3-кратну перевагу у часови розробкы тай обємови кода в ізрунянёви із проґрамами на C++. Із другого бока, проґрамы на C++ были на тулько же раз скурші. Авторы признавут, же здобыты дані не є репрезентатівнов выборков і не роблят катеґорічні выслідкы. </p><p>В иншому експеріментови<sup id="cite_ref-raytracer_56-0" class="reference"><a href="#cite_note-raytracer-56"><span class="cite-bracket">[</span>56<span class="cite-bracket">]</span></a></sup> строгі функціоналны языкы (<a href="/w/index.php?title=Standard_ML&action=edit&redlink=1" class="new" title="Standard ML (такой сторінкы нїт)">Standard ML</a>, <a href="/w/index.php?title=OCaml&action=edit&redlink=1" class="new" title="OCaml (такой сторінкы нїт)">OCaml</a>) показали сполочне прискоріня розробкы 10-кратне (головно позад скуршому выявліню хыб) при приблизно руных показниках шустродії (были хосновані рузні компілаторы в рузных режімах). </p><p>У досліжінёви Лутца Прехелта<sup id="cite_ref-perhelt_57-0" class="reference"><a href="#cite_note-perhelt-57"><span class="cite-bracket">[</span>57<span class="cite-bracket">]</span></a></sup>, на основі аналіза коло 80 рішінь, написаных доброволцями, были здобыті, в часности, слідувущі выслідкы: </p> <ul><li>Perl, Python, Rexx, Tcl забезпечили удвоє бульшу шустрость розробкы, чим C, C++ і Java, причому одержаный код быв так само удвоє май короткый.</li> <li>Проґрамы на скріптовых языках хосновали приблизно удвоє бульше тямы, ги C/C++.</li></ul> <div class="mw-heading mw-heading2"><h2 id="Крітіка"><span id=".D0.9A.D1.80.D1.96.D1.82.D1.96.D0.BA.D0.B0"></span>Крітіка</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=37" title="Едітовати секцію: Крітіка" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=37" title="Редагувати вихідний код розділу: Крітіка"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <div class="mw-highlight mw-highlight-lang-cpp mw-content-ltr" dir="ltr"><pre><span></span><span class="cp">#include</span><span class="w"> </span><span class="cpf"><iostream></span><span class="c1"> // для хоснованя std::cout</span> <span class="cp">#include</span><span class="w"> </span><span class="cpf"><vector></span><span class="c1"> // має у собі дінамічный масив</span> <span class="cp">#include</span><span class="w"> </span><span class="cpf"><map></span><span class="c1"> // має у собі тіп даных словарь</span> <span class="cp">#include</span><span class="w"> </span><span class="cpf"><string></span> <span class="k">using</span><span class="w"> </span><span class="k">namespace</span><span class="w"> </span><span class="nn">std</span><span class="p">;</span> <span class="kt">int</span><span class="w"> </span><span class="nf">main</span><span class="p">()</span> <span class="p">{</span><span class="w"> </span> <span class="w"> </span><span class="c1">// Обявляєме асоціатівный контейнер із радковыми ключами і даными у виді вектору рядку.</span> <span class="w"> </span><span class="n">map</span><span class="o"><</span><span class="n">string</span><span class="p">,</span><span class="w"> </span><span class="n">vector</span><span class="o"><</span><span class="n">string</span><span class="o">></span><span class="w"> </span><span class="o">></span><span class="w"> </span><span class="n">items</span><span class="p">;</span> <span class="w"> </span><span class="c1">// Додаме в сись асоціатівный контейнер пару людий і даме їм дакулько предмету.</span> <span class="w"> </span><span class="n">items</span><span class="p">[</span><span class="s">"Anya"</span><span class="p">].</span><span class="n">push_back</span><span class="p">(</span><span class="s">"scarf"</span><span class="p">);</span> <span class="w"> </span><span class="n">items</span><span class="p">[</span><span class="s">"Dmitry"</span><span class="p">].</span><span class="n">push_back</span><span class="p">(</span><span class="s">"tickets"</span><span class="p">);</span> <span class="w"> </span><span class="n">items</span><span class="p">[</span><span class="s">"Anya"</span><span class="p">].</span><span class="n">push_back</span><span class="p">(</span><span class="s">"puppy"</span><span class="p">);</span> <span class="w"> </span><span class="c1">// Перебереме всі обєкты в контейнері</span> <span class="w"> </span><span class="k">for</span><span class="p">(</span><span class="k">const</span><span class="w"> </span><span class="k">auto</span><span class="o">&</span><span class="w"> </span><span class="n">person</span><span class="w"> </span><span class="o">:</span><span class="w"> </span><span class="n">items</span><span class="p">)</span><span class="w"> </span><span class="p">{</span> <span class="w"> </span><span class="c1">// person - то пара двох обєкту: person.first - то го імня,</span> <span class="w"> </span><span class="c1">// person.second - то є список го предмету (вектор рядку)</span> <span class="w"> </span><span class="n">cout</span><span class="w"> </span><span class="o"><<</span><span class="w"> </span><span class="n">person</span><span class="p">.</span><span class="n">first</span><span class="w"> </span><span class="o"><<</span><span class="w"> </span><span class="s">" is carrying "</span><span class="w"> </span><span class="o"><<</span><span class="w"> </span><span class="n">person</span><span class="p">.</span><span class="n">second</span><span class="p">.</span><span class="n">size</span><span class="p">()</span><span class="w"> </span><span class="o"><<</span><span class="w"> </span><span class="s">" items"</span><span class="w"> </span><span class="o"><<</span><span class="w"> </span><span class="n">endl</span><span class="p">;</span> <span class="w"> </span><span class="p">}</span> <span class="p">}</span> </pre></div> <div class="mw-heading mw-heading3"><h3 id="За_крітіку_C++_у_цілому"><span id=".D0.97.D0.B0_.D0.BA.D1.80.D1.96.D1.82.D1.96.D0.BA.D1.83_C.2B.2B_.D1.83_.D1.86.D1.96.D0.BB.D0.BE.D0.BC.D1.83"></span>За крітіку C++ у цілому</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=38" title="Едітовати секцію: За крітіку C++ у цілому" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=38" title="Редагувати вихідний код розділу: За крітіку C++ у цілому"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>май часті крітікы не протиставлявут C++ якомусь другому конкретному языкови, а повідавут, же удказ уд хоснованя єдного языка, што має много недостатку, в хосен декомпозіції проєкта на пудзадачі, котрі рішавутся на рузных языках, майбульш пудходящых про них, робит розробку не таков бабрачнов при єдночаснум пудвышінёви показнику <a href="/w/index.php?title=%D0%9A%D0%B2%D0%B0%D0%BB%D1%96%D1%87%D0%BD%D0%BE%D1%81%D1%82%D1%8C_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F&action=edit&redlink=1" class="new" title="Квалічность проґрамованя (такой сторінкы нїт)">квалічности проґрамованя</a><sup id="cite_ref-languageorient2_58-0" class="reference"><a href="#cite_note-languageorient2-58"><span class="cite-bracket">[</span>58<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-Hudak_DSL2_59-0" class="reference"><a href="#cite_note-Hudak_DSL2-59"><span class="cite-bracket">[</span>59<span class="cite-bracket">]</span></a></sup>. Із тої самої причины крітікуєся і засокочіня сполочливости із Цы: аж частина задачі жадат низькорунёвых можностю, май розумно бы было вынести ї у окрему пудсістему і написати ї на Цы. </p><p>Свою очерідь, побучникы C++ тврдят, же усуненя технічных і орґанізаційных проблем мижеязыкового сполочнодіїня позад хоснованя єдного універсалного языка взамін дакулькых шпеціалізованых є май вижливо, як хыбованя того універсалного языка. Тобто, сама широкость можностю C++ оправдує хыбы каждої зокрема можности; в тым числови і хыбы, унаслідовані уд Цы, оправдані перевагами сполочности (див. <a class="mw-selflink-fragment" href="#Філозофія_C++">горі</a>). </p><p>Такым способом, то-ты самі особности C++ – обєм, тяжкость, <a href="/w/index.php?title=%D0%95%D0%BA%D0%BB%D0%B5%D0%BA%D1%82%D1%96%D1%87%D0%BD%D0%BE%D1%81%D1%82%D1%8C&action=edit&redlink=1" class="new" title="Еклектічность (такой сторінкы нїт)">еклектічность</a> і невыразна цілёва ніша хоснованя – побучниками ся розглядают ги «головна перевага», а крітіками – ги «головный недостаток». </p> <div class="mw-heading mw-heading3"><h3 id="Крітіка_оремых_елементу_і_концепцій"><span id=".D0.9A.D1.80.D1.96.D1.82.D1.96.D0.BA.D0.B0_.D0.BE.D1.80.D0.B5.D0.BC.D1.8B.D1.85_.D0.B5.D0.BB.D0.B5.D0.BC.D0.B5.D0.BD.D1.82.D1.83_.D1.96_.D0.BA.D0.BE.D0.BD.D1.86.D0.B5.D0.BF.D1.86.D1.96.D0.B9"></span>Крітіка оремых елементу і концепцій</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=39" title="Едітовати секцію: Крітіка оремых елементу і концепцій" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=39" title="Редагувати вихідний код розділу: Крітіка оремых елементу і концепцій"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <div class="mw-heading mw-heading4"><h4 id="Контрол_за_повожінём"><span id=".D0.9A.D0.BE.D0.BD.D1.82.D1.80.D0.BE.D0.BB_.D0.B7.D0.B0_.D0.BF.D0.BE.D0.B2.D0.BE.D0.B6.D1.96.D0.BD.D1.91.D0.BC"></span>Контрол за повожінём</h4><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=40" title="Едітовати секцію: Контрол за повожінём" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=40" title="Редагувати вихідний код розділу: Контрол за повожінём"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Ідеолоґія языка змішує «контрол за повожінём» із «контролом за ефектівностю»: прінціп «не платиш за то, што не хоснуєш» ➤ предпокладає, же засобованя повного контрола проґраміста над вшиткым, што ся діє в проґрамі на доста малому руни, є потребным і достаным про достиганя высокої ефектівности кода. У дійсности про грубі проґрамы то не так: коли низькорунёва оптімізація кладе ся на ґорґуші проґраміста, котру квалічный компілатор <a href="/w/index.php?title=%D0%9F%D1%80%D0%B5%D0%B4%D0%BC%D0%B5%D1%82%D0%BD%D0%BE-%D0%BE%D1%80%D1%8C%D1%94%D0%BD%D1%82%D0%BE%D0%B2%D0%B0%D0%BD%D1%8B%D0%B9_%D1%8F%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F&action=edit&redlink=1" class="new" title="Предметно-орьєнтованый язык проґрамованя (такой сторінкы нїт)">предметно-орьєнтованого</a> языка бы зробив ліпше, то то веде лем до ізбульшіня обєма кода, до тяжщого процеса розробкы і до знижіня порозумілости і тестуйимости кода. </p><p>Тым способом, прінціп «не платити за то, што не хоснуєш» в реалности не дає такых жаданых переваг в ефектівности, айбо казит квалічность проґрамы. </p> <div class="mw-heading mw-heading4"><h4 id="Компонентне_і_обєктово-орьєнтоване_проґрамованя"><span id=".D0.9A.D0.BE.D0.BC.D0.BF.D0.BE.D0.BD.D0.B5.D0.BD.D1.82.D0.BD.D0.B5_.D1.96_.D0.BE.D0.B1.D1.94.D0.BA.D1.82.D0.BE.D0.B2.D0.BE-.D0.BE.D1.80.D1.8C.D1.94.D0.BD.D1.82.D0.BE.D0.B2.D0.B0.D0.BD.D0.B5_.D0.BF.D1.80.D0.BE.D2.91.D1.80.D0.B0.D0.BC.D0.BE.D0.B2.D0.B0.D0.BD.D1.8F"></span>Компонентне і обєктово-орьєнтоване проґрамованя</h4><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=41" title="Едітовати секцію: Компонентне і обєктово-орьєнтоване проґрамованя" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=41" title="Редагувати вихідний код розділу: Компонентне і обєктово-орьєнтоване проґрамованя"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>За думанём <a href="/w/index.php?title=%D0%90%D0%BB%D0%B0%D0%BD_%D0%9A%D0%B5%D0%B9&action=edit&redlink=1" class="new" title="Алан Кей (такой сторінкы нїт)">Алана Кея</a>, обєктова модел «<a href="/w/index.php?title=%D0%90%D0%BB%D2%91%D0%BE%D0%BB&action=edit&redlink=1" class="new" title="Алґол (такой сторінкы нїт)">Алґол</a> із класами», котра хоснує ся в C++, уступає моделі «усё є обєкт»<sup id="cite_ref-alankay2_60-0" class="reference"><a href="#cite_note-alankay2-60"><span class="cite-bracket">[</span>60<span class="cite-bracket">]</span></a></sup>, котра хоснує ся в <a href="/w/index.php?title=Objective-C&action=edit&redlink=1" class="new" title="Objective-C (такой сторінкы нїт)">Objective-C</a>. Ун лічит, же модел Objective-C має бульшу кулькість можностю, май файні показникы <a href="/w/index.php?title=%D0%9F%D0%BE%D0%BD%D0%BE%D0%B2%D0%BD%D0%B5_%D1%85%D0%BE%D1%81%D0%BD%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F_%D0%BA%D0%BE%D0%B4%D0%B0&action=edit&redlink=1" class="new" title="Поновне хоснованя кода (такой сторінкы нїт)">поновного хоснованя кода</a>, ліпшу порозумілость, модіфікуйимость і тестуйимость. То-то є ізкапчано із тым, же у Objective-C всі компоненты є обєктами, што засобує бульшу єднородность і простоту в хоснуванёви обєктово-орьєнтованых пудходу. Модел наслідованя в C++ складна і тяжка в реалізації. Она часто заставляє до зотворіня складных ієрархій із неприродными удношінём миже класами. Наприклад, у многых трафунках хоснуєся наслідованя взамін вложіня, што зотворює нездорову залежность миже класами. Позад того часто выходит, же класы ставут <a href="/w/index.php?title=%D0%86%D0%B7%D0%BA%D0%B0%D0%BF%D1%87%D0%B0%D0%BD%D0%BE%D1%81%D1%82%D1%8C_(%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F)&action=edit&redlink=1" class="new" title="Ізкапчаность (проґрамованя) (такой сторінкы нїт)">силно ізкапчаными</a> із неясно розділеным функціоналом, што убтяжує їхнє подалше ізміниня і тестованя. </p><p>Як приклад<sup id="cite_ref-FOOTNOTEШилдт,_Теория_и_практика_C++1996_61-0" class="reference"><a href="#cite_note-FOOTNOTEШилдт,_Теория_и_практика_C++1996-61"><span class="cite-bracket">[</span>61<span class="cite-bracket">]</span></a></sup>, у літератури наводится рекомендація реалізовати клас «список» як пудклас уд «елемента списка», де каждый елемент має функції доступа д иншым елементам. Таке рішення є нелоґічным із математічної точкы зріня, бо «список» не є філём «елемента списка», а складає ся із них. У бульш строгых языках проґрамованя така модел не удображаєся, бо там наслідованя має значіня «є пудфілём», а не «є частёв». </p><p>Дакотрі бібліотекы в C++ жадавут особного переведіня тіпу увирьх і долу за ієрархіёв класу через <code>static_cast</code> авадь <code>dynamic_cast</code>. То порушує <a href="/w/index.php?title=%D0%A2%D1%96%D0%BF%D0%BE%D0%B1%D0%B5%D0%B7%D0%BF%D0%B5%D0%BA%D0%B0&action=edit&redlink=1" class="new" title="Тіпобезпека (такой сторінкы нїт)">тіпобезпеку</a> языка, бо компілатор не може повностю перевірити правильность переведіня тіпу, ай проґраміст має на собі удповідальность за правильне хоснованя. </p><p>Кроме того, C++ має грубу <a href="/w/index.php?title=%D0%92%D1%8F%D0%B7%D0%BA%D0%BE%D1%81%D1%82%D1%8C_(%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%BE%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F)&action=edit&redlink=1" class="new" title="Вязкость (проґромованя) (такой сторінкы нїт)">вязкость</a> рішінь. То-то означат, же малі міняня на пузьньых етапах розробкы можут жадати переписованя грубиньськых частий проєкта. Наприклад, якшто гія ізмінити пудход ід сокочінёви даных авадь ізмінити штруктуру класу, то-то може потребовати міняня многых частий кода, што дуже убтяжує пудпору і розвуй проєкта<sup id="cite_ref-languageorient3_62-0" class="reference"><a href="#cite_note-languageorient3-62"><span class="cite-bracket">[</span>62<span class="cite-bracket">]</span></a></sup>. <a href="/w/index.php?title=%D0%AF%D0%BD_%D0%94%D0%B6%D0%BE%D0%B9%D0%BD%D0%B5%D1%80&action=edit&redlink=1" class="new" title="Ян Джойнер (такой сторінкы нїт)">Ян Джойнер</a><sup id="cite_ref-Joyner2_63-0" class="reference"><a href="#cite_note-Joyner2-63"><span class="cite-bracket">[</span>63<span class="cite-bracket">]</span></a></sup> крітікує C++ за хыбне ідефікація інкапсуляції (поміщіня даных у середину обєкта і удділіня реалізації уд інтерфейса) із сокрытём реалізації. Се-се означат, же в C++ доступ до даных класа гія робити через ґеттеры і сеттеры — шпеціалні функції доступа. Позад того обєм кода ізбульшуєся, а го штруктура убтяжуєся. </p><p>Такый пудход робит C++ май мало выразным руняно із языками, ди доступ ід даным реалізуєся через обєктну модел авадь через удперті штімованя. У выслідкови, C++ часто жадат бульше кода для реалізації простої функціоналности, што меншит порозумілость і продуктівність проґраміста. </p><p>Щи єдным важливым убграничінём є то, же зовпаданя тіпу у C++ вызначатся на руни ідентіфікатору, а не сіґнатур. То означат, же пудстановка компоненту, основана на зовпадіню інтерфейсу, неможлива. Позад того додаваня нової функціоналности в сістему часто жадат особного міняня ужек існувучого кода, што призводит до силної вязкости рішінь<sup id="cite_ref-Paulson3_64-0" class="reference"><a href="#cite_note-Paulson3-64"><span class="cite-bracket">[</span>64<span class="cite-bracket">]</span></a></sup>. </p><p><a href="/w/index.php?title=%D0%9B%D1%96%D0%BD%D1%83%D1%81_%D0%A2%D0%BE%D1%80%D0%B2%D0%B0%D0%BB%D0%B4%D1%81&action=edit&redlink=1" class="new" title="Лінус Торвалдс (такой сторінкы нїт)">Лінус Торвалдс</a><sup id="cite_ref-autogenerated12_65-0" class="reference"><a href="#cite_note-autogenerated12-65"><span class="cite-bracket">[</span>65<span class="cite-bracket">]</span></a></sup> крітікує C++ за то, же «код видится абстрактным лем до тої поры, докы не гія го міняти». То-то є ізкапчано із тым, же абстракція у C++ часто пряче тяжку реалізацію, котра робит код тяжко модіфікуйимым і пудпорёваным. </p><p>Крітіка C++ із позіцій ООП приведене у роботі<sup id="cite_ref-Joyner_66-0" class="reference"><a href="#cite_note-Joyner-66"><span class="cite-bracket">[</span>66<span class="cite-bracket">]</span></a></sup>. </p> <div class="mw-heading mw-heading4"><h4 id="Метапроґрамованя"><span id=".D0.9C.D0.B5.D1.82.D0.B0.D0.BF.D1.80.D0.BE.D2.91.D1.80.D0.B0.D0.BC.D0.BE.D0.B2.D0.B0.D0.BD.D1.8F"></span>Метапроґрамованя</h4><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=42" title="Едітовати секцію: Метапроґрамованя" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=42" title="Редагувати вихідний код розділу: Метапроґрамованя"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Порожувуче метапроґрамованя у C++ основуєся на шаблонах і <a href="/w/index.php?title=%D0%9F%D1%80%D0%B5%D0%BF%D1%80%D0%BE%D1%86%D0%B5%D1%81%D0%BE%D1%80&action=edit&redlink=1" class="new" title="Препроцесор (такой сторінкы нїт)">препроцесорови</a>, оно є тяжкым і має убграничині можности. Сістема шаблону в C++ в сути є верзіёв примітівного <a href="/wiki/%D0%A4%D1%83%D0%BD%D0%BA%D1%86%D1%96%D0%BE%D0%BD%D0%B0%D0%BB%D0%BD%D0%B5_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F" title="Функціоналне проґрамованя">функціоналного языка проґрамованя</a>, котрый ся оконує при компілації. Тот язык майжик не перехоплюєся із самым C++, позад што потенціал роста тяжкости абстракцій убграничиным. Проґрамы, котрі хоснуювут шаблоны в C++, мавут дуже низькі показникы порозумілости і тестованости, а особинно розгорнутя шаблону робит неефектівный код, бо язык шаблону не має ніякых средств оптімізації. Вбудовані предметно-спеціфічні языкы, зроблині тым способом, єднако хочут знаня самого C++, што не забезпечує повного розділіня роботы. Такым способом, можности C++ у розширіню можностю самого C++ сут дуже убграничині.<sup id="cite_ref-67" class="reference"><a href="#cite_note-67"><span class="cite-bracket">[</span>67<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-68" class="reference"><a href="#cite_note-68"><span class="cite-bracket">[</span>68<span class="cite-bracket">]</span></a></sup> </p> <div class="mw-heading mw-heading4"><h4 id="Кросплатформность"><span id=".D0.9A.D1.80.D0.BE.D1.81.D0.BF.D0.BB.D0.B0.D1.82.D1.84.D0.BE.D1.80.D0.BC.D0.BD.D0.BE.D1.81.D1.82.D1.8C"></span>Кросплатформность</h4><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=43" title="Едітовати секцію: Кросплатформность" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=43" title="Редагувати вихідний код розділу: Кросплатформность"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div><p> Про писаня портованого кода на C++ гія груба умілость і скушеность, ай «недуйлавый» код на C++ із грубов можностёв мож быти непортованый<sup id="cite_ref-XXtraps64bit2_69-0" class="reference"><a href="#cite_note-XXtraps64bit2-69"><span class="cite-bracket">[</span>69<span class="cite-bracket">]</span></a></sup>. За думков <a href="/w/index.php?title=%D0%9B%D1%96%D0%BD%D1%83%D1%81_%D0%A2%D0%BE%D1%80%D0%B2%D0%B0%D0%BB%D0%B4%D1%81&action=edit&redlink=1" class="new" title="Лінус Торвалдс (такой сторінкы нїт)">Лінуса Торвалдса</a>, убы засобовати портованость на C++, самарно д Цы, проґраматор мусит убграничитися можностями C++, котрі перебрані із Цы<sup id="cite_ref-autogenerated13_70-0" class="reference"><a href="#cite_note-autogenerated13-70"><span class="cite-bracket">[</span>70<span class="cite-bracket">]</span></a></sup>. Штандарт має много елементу, котрі сут вызначені ги «implementation-defined» (наприклад, розмір указатиля на методы класу в рузных компілаторах кывавутся в розмірі уд 4 д 20 байтам<sup id="cite_ref-71" class="reference"><a href="#cite_note-71"><span class="cite-bracket">[</span>71<span class="cite-bracket">]</span></a></sup>), што слабит портованость проґрам із їх хоснованём.</p><div class="ts-Конец_цитаты-source">Дірективный характер штандартізації языка, неповна зворотна сполочность і противность жадань рузных верзій штандарта роблят проблемы при перенесінёви проґрам миже рузными компілаторами і даже верзіями єдных і тых же компілатору.</div> <div class="mw-heading mw-heading3"><h3 id="Удсутность_можностю"><span id=".D0.A3.D0.B4.D1.81.D1.83.D1.82.D0.BD.D0.BE.D1.81.D1.82.D1.8C_.D0.BC.D0.BE.D0.B6.D0.BD.D0.BE.D1.81.D1.82.D1.8E"></span>Удсутность можностю</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=44" title="Едітовати секцію: Удсутность можностю" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=44" title="Редагувати вихідний код розділу: Удсутность можностю"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <dl><dt><b>Рефлексівне метапроґрамованя</b></dt></dl> <p><a href="/w/index.php?title=%D0%86%D0%BD%D1%82%D1%80%D0%BE%D1%81%D0%BF%D0%B5%D0%BA%D1%86%D1%96%D1%8F_(%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F)&action=edit&redlink=1" class="new" title="Інтроспекція (проґрамованя) (такой сторінкы нїт)">Інтроспекція</a> в C++ є зроблина удділено уд основної сістемы тіпу, што робить ї майжи непотребнов. Найвеце, што мож ся досягнути, то є параметрізація повожіня на наперед знамых опціях. То бримає хоснованю C++ в бульшости пудходу до реалізації <a href="/wiki/%D0%A3%D0%BC%D0%B5%D0%BB%D0%B0_%D1%96%D0%BD%D1%82%D0%B5%D0%BB%D1%96%D2%91%D0%B5%D0%BD%D1%86%D1%96%D1%8F" title="Умела інтеліґенція">умілої інтелеґенції</a>. </p> <dl><dt>Функціоналне проґрамованя Явна пудпора функціоналного проґрамованя є лем у штандарті <a href="/w/index.php?title=C%2B%2B11&action=edit&redlink=1" class="new" title="C++11 (такой сторінкы нїт)">C++0x</a>, перед тым то-ты недостаткы заповнёвали бібліотеки (<a href="/w/index.php?title=Loki&action=edit&redlink=1" class="new" title="Loki (такой сторінкы нїт)">Loki</a>, <a href="/w/index.php?title=Boost&action=edit&redlink=1" class="new" title="Boost (такой сторінкы нїт)">Boost</a>), котрі хосновали язык шаблону, айбо їх квалічность є далеко май слаба в поруняні із рішінями, вбудоваными д функціоналным языкам<sup id="cite_ref-72" class="reference"><a href="#cite_note-72"><span class="cite-bracket">[</span>пояснения 1<span class="cite-bracket">]</span></a></sup>. Так само, квалічность реалізації можностю C++ (гий ООП) через функціоналні языкы є май низька. Реалізовані в C++ можности функціоналного проґрамованя не позволявут хосновати оптімізаційны стратеґії<span title="#Вычислительная эффективность"><sup><a href="#Вычислительная_эффективность">[⇨]</a></sup></span>, котрі сут особні функціоналному проґрамованёви. Они лем убграничині на вызовы функціоналных бібліотек і реалізацію окремых функцій. То практічно не дає ніякых предностей при проєктованёви проґрам (див. «<a href="/w/index.php?title=%D0%A3%D0%B4%D0%BF%D0%BE%D0%B2%D1%96%D0%B4%D0%BD%D0%BE%D1%81%D1%82%D1%8C_%D0%9A%D0%B0%D1%80%D1%80%D1%96_%E2%80%94_%D0%93%D0%BE%D0%B2%D0%B0%D1%80%D0%B4%D0%B0&action=edit&redlink=1" class="new" title="Удповідность Каррі — Говарда (такой сторінкы нїт)">Удповідность Каррі — Говарда</a>»).</dt></dl> <div class="mw-heading mw-heading3"><h3 id="Ізвышні_і_небезпечні_можности"><span id=".D0.86.D0.B7.D0.B2.D1.8B.D1.88.D0.BD.D1.96_.D1.96_.D0.BD.D0.B5.D0.B1.D0.B5.D0.B7.D0.BF.D0.B5.D1.87.D0.BD.D1.96_.D0.BC.D0.BE.D0.B6.D0.BD.D0.BE.D1.81.D1.82.D0.B8"></span>Ізвышні і небезпечні можности</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=45" title="Едітовати секцію: Ізвышні і небезпечні можности" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=45" title="Редагувати вихідний код розділу: Ізвышні і небезпечні можности"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <div class="mw-heading mw-heading4"><h4 id="Встроенные_средства_обхода_ограничений"><span id=".D0.92.D1.81.D1.82.D1.80.D0.BE.D0.B5.D0.BD.D0.BD.D1.8B.D0.B5_.D1.81.D1.80.D0.B5.D0.B4.D1.81.D1.82.D0.B2.D0.B0_.D0.BE.D0.B1.D1.85.D0.BE.D0.B4.D0.B0_.D0.BE.D0.B3.D1.80.D0.B0.D0.BD.D0.B8.D1.87.D0.B5.D0.BD.D0.B8.D0.B9"></span>Встроенные средства обхода ограничений</h4><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=46" title="Едітовати секцію: Встроенные средства обхода ограничений" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=46" title="Редагувати вихідний код розділу: Встроенные средства обхода ограничений"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Язык має засобы, котрі позволявут проґрамістови порушати задані у конкретному припаді прінціпы проґрамованя. Наприклад, модіфікатор <code>const</code> задає обєктови особность неізмінности стана, айбо модіфікатор <code>mutable</code> дозвалює на насилне міняня стана в удну конштантного обєкта, што фактічно ізрушує конштантность. Бульше того, мож дінамічно вылучити атрібут <code>const</code> із конштантного обєкта, перемінявучи ёго на ліво-допустимый (L-value). Сутя такых можностю у языкови робит пробы <a href="/w/index.php?title=%D0%A4%D0%BE%D1%80%D0%BC%D0%B0%D0%BB%D0%BD%D0%B0_%D0%B2%D0%B5%D1%80%D1%96%D1%84%D1%96%D0%BA%D0%B0%D1%86%D1%96%D1%8F&action=edit&redlink=1" class="new" title="Формална веріфікація (такой сторінкы нїт)">формалної перевіркы</a> кода нетяклыми, а хоснованя убграничінь на оптімізацію — неможными. </p> <div class="mw-heading mw-heading4"><h4 id="Неконтролуйиме_макропудставліня"><span id=".D0.9D.D0.B5.D0.BA.D0.BE.D0.BD.D1.82.D1.80.D0.BE.D0.BB.D1.83.D0.B9.D0.B8.D0.BC.D0.B5_.D0.BC.D0.B0.D0.BA.D1.80.D0.BE.D0.BF.D1.83.D0.B4.D1.81.D1.82.D0.B0.D0.B2.D0.BB.D1.96.D0.BD.D1.8F"></span>Неконтролуйиме макропудставліня</h4><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=47" title="Едітовати секцію: Неконтролуйиме макропудставліня" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=47" title="Редагувати вихідний код розділу: Неконтролуйиме макропудставліня"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Засобы макропудставліня у Цы (<code>#define</code>) сут дуже моцными, айбо і небезпечным засобами. Они усокотилися у C++, ходь і в C++ є май строгі і шпеціалізовані засобы на рішіня всьых задач, на котрі они были задумані в Цы — шаблоны, переубтерьханя функцій, inline-функції, просторы імен, май розвойина тіпізація, розширине хоснованя модіфікатора <code>const</code> і инакє. У внаслідованых уд Цы штандартных бібліотеках є много потенціално небезпечных макросу<sup id="cite_ref-73" class="reference"><a href="#cite_note-73"><span class="cite-bracket">[</span>72<span class="cite-bracket">]</span></a></sup>. Шаблонне метапроґрамованя пораз ся комбінує із хоснованём макропудставліня на засобованя так называнаго «<a href="/w/index.php?title=%D0%A1%D1%96%D0%BD%D1%82%D0%B0%D0%BA%D1%81%D1%96%D1%87%D0%BD%D1%8B%D0%B9_%D1%86%D1%83%D0%BA%D0%BE%D1%80&action=edit&redlink=1" class="new" title="Сінтаксічный цукор (такой сторінкы нїт)">сінтаксічного цукра</a>». </p> <div class="mw-heading mw-heading4"><h4 id="Проблемы_переубтерьханя"><span id=".D0.9F.D1.80.D0.BE.D0.B1.D0.BB.D0.B5.D0.BC.D1.8B_.D0.BF.D0.B5.D1.80.D0.B5.D1.83.D0.B1.D1.82.D0.B5.D1.80.D1.8C.D1.85.D0.B0.D0.BD.D1.8F"></span>Проблемы переубтерьханя</h4><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=48" title="Едітовати секцію: Проблемы переубтерьханя" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=48" title="Редагувати вихідний код розділу: Проблемы переубтерьханя"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <div class="ts-Конец_цитаты-source">Прінціпы переубтерьханя функцій і оператору в C++ веде д грубому дублёванёви кода. Переубтерьханя оператору, што было задумане на додаваня «<a href="/w/index.php?title=%D0%A1%D1%96%D0%BD%D1%82%D0%B0%D0%BA%D1%81%D1%96%D1%87%D0%BD%D1%8B%D0%B9_%D1%86%D1%83%D0%BA%D0%BE%D1%80&action=edit&redlink=1" class="new" title="Сінтаксічный цукор (такой сторінкы нїт)">сінтаксічного цукра</a>», в C++ позволює без контрола міняти повожіня елементарных операцій про рузні тіпы. То дуже пудвыщує різік хыб, тым бульше, што уводит новый сінтаксіс авадь міняє сутный (наприклад, робити нові операторы авадь міняти пріорітеты і асоціатівность) не мож, ходь сінтаксіс штандартных оператору C++ не фурт адекватный семантіці новых тіпу, котрі ся можут потребовати в проґрамі. <p>Окремі проблемы робит легкота переубтерьханя оператору <code>new</code>/<code>delete</code>, што може ізробити дуже гамішні і тяжко находимі хыбы. При тум дашто із того, што бы ся чекало інтуітівно (наприклад, харіня дінамічных обєкту при ґенерації выйимку), в C++ ся не оконує, а груба часть переубтерьханых функцій і оператору ся выкликавут неявно (наприклад, при перероблінёви тіпу авадь творінёви дочасных екземплару класу). </p><p>У выслідкови засобы, котрі мали робити проґрамы май ясными і май удобными про розробку і убслугованя, перероблявутся на жрідло непотребного убтяжіня і знижавут надійность кода. </p> </div> <div class="mw-heading mw-heading3"><h3 id="Вылічна_ефектівность"><span id=".D0.92.D1.8B.D0.BB.D1.96.D1.87.D0.BD.D0.B0_.D0.B5.D1.84.D0.B5.D0.BA.D1.82.D1.96.D0.B2.D0.BD.D0.BE.D1.81.D1.82.D1.8C"></span>Вылічна ефектівность</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=49" title="Едітовати секцію: Вылічна ефектівность" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=49" title="Редагувати вихідний код розділу: Вылічна ефектівность"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <div class="mw-heading mw-heading4"><h4 id="Резултувущый_обєм_оконаного_кода"><span id=".D0.A0.D0.B5.D0.B7.D1.83.D0.BB.D1.82.D1.83.D0.B2.D1.83.D1.89.D1.8B.D0.B9_.D0.BE.D0.B1.D1.94.D0.BC_.D0.BE.D0.BA.D0.BE.D0.BD.D0.B0.D0.BD.D0.BE.D0.B3.D0.BE_.D0.BA.D0.BE.D0.B4.D0.B0"></span>Резултувущый обєм оконаного кода</h4><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=50" title="Едітовати секцію: Резултувущый обєм оконаного кода" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=50" title="Редагувати вихідний код розділу: Резултувущый обєм оконаного кода"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Хосновані шаблоны в C++ є формов параметрічного поліморфізма на руни выходного кода, айбо при компілації ун переробляєся на сітуаційный (ad hoc) поліморфізм (то є переубтерьханя функцій), што веде ід значному ізбульшіню обєма машинного кода в руняно із языками, котрі мавут управді поліморфну сістему тіпу (як у насліднику <a href="/w/index.php?title=ML&action=edit&redlink=1" class="new" title="ML (такой сторінкы нїт)">ML</a>). </p><p>Штобы ізмешити розмір машинного кода, пробувут автоматічно убробляти выходный код перед розкрутков шаблону<sup id="cite_ref-74" class="reference"><a href="#cite_note-74"><span class="cite-bracket">[</span>73<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-75" class="reference"><a href="#cite_note-75"><span class="cite-bracket">[</span>74<span class="cite-bracket">]</span></a></sup>. Другым рішінём могла бы быти штандартізована можность експорта шаблону (щи із <a href="/wiki/1998" title="1998">1998 года</a>), айбо она є доступна лем у мало котрых компілаторах, бо є тяжко реалізовати і не є хосенна<sup id="cite_ref-76" class="reference"><a href="#cite_note-76"><span class="cite-bracket">[</span>75<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-77" class="reference"><a href="#cite_note-77"><span class="cite-bracket">[</span>76<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-78" class="reference"><a href="#cite_note-78"><span class="cite-bracket">[</span>думука 1<span class="cite-bracket">]</span></a></sup> на імпорт бібліотек шаблону C++ в языкы із инаков семантіков. </p><p>Побучникы C++ оспорювут роздуваня кода гий перебульшине<sup id="cite_ref-79" class="reference"><a href="#cite_note-79"><span class="cite-bracket">[</span>77<span class="cite-bracket">]</span></a></sup>, іґнорувучи факт, што в Цы параметрічный поліморфізм ся компілує просто, без дублёваня тіл функцій. Они лічат, же параметрічный поліморфізм у Цы є небезпечный — тобто май небезпечно, ги перехуд уд Цы до C++ (ходь противникы C++ думавут наопак). </p> <div class="mw-heading mw-heading4"><h4 id="Потенціал_оптімізації"><span id=".D0.9F.D0.BE.D1.82.D0.B5.D0.BD.D1.86.D1.96.D0.B0.D0.BB_.D0.BE.D0.BF.D1.82.D1.96.D0.BC.D1.96.D0.B7.D0.B0.D1.86.D1.96.D1.97"></span>Потенціал оптімізації</h4><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=51" title="Едітовати секцію: Потенціал оптімізації" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=51" title="Редагувати вихідний код розділу: Потенціал оптімізації"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div><p> Позад слабої сістемы тіпу і бивноты <a href="/w/index.php?title=%D0%9F%D0%BE%D0%B1%D0%BE%D1%87%D0%BD%D1%96_%D0%B5%D1%84%D0%B5%D0%BA%D1%82%D1%8B_(%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F)&action=edit&redlink=1" class="new" title="Побочні ефекты (проґрамованя) (такой сторінкы нїт)">побучных ефекту</a> стає через-чурь тяжкым еквівалентне преобразованя проґрам, а значит і вбудованя у компілатор многых оптімізувущых алґорітму, такых гий автоматічне <a href="/w/index.php?title=%D0%A0%D0%BE%D0%B7%D0%BF%D0%B0%D1%80%D0%B0%D0%BB%D0%B5%D0%BB%D1%91%D0%B2%D0%B0%D0%BD%D1%8F_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC&action=edit&redlink=1" class="new" title="Розпаралелёваня проґрам (такой сторінкы нїт)">розпаралелёваня проґрам</a>, <a href="/w/index.php?title=%D0%97%D1%80%D1%83%D1%88%D1%96%D0%BD%D1%8F_%D1%81%D0%BF%D0%BE%D0%BB%D0%BE%D1%87%D0%BD%D1%8B%D1%85_%D0%BF%D1%83%D0%B4%D0%B2%D1%8B%D1%80%D0%B0%D0%B6%D1%96%D0%BD%D1%8C&action=edit&redlink=1" class="new" title="Зрушіня сполочных пудвыражінь (такой сторінкы нїт)">зрушіня сполочных пудвыражінь</a>, λ-пудём, выклик процедур із передачов <a href="/w/index.php?title=%D0%9F%D1%80%D0%BE%D0%B4%D0%BE%D0%B2%D0%B6%D1%96%D0%BD%D1%8F_(%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F)&action=edit&redlink=1" class="new" title="Продовжіня (проґрамованя) (такой сторінкы нїт)">продовжіня</a>, <a href="/w/index.php?title=%D0%A1%D1%83%D0%BF%D0%B5%D1%80%D0%BA%D0%BE%D0%BF%D1%96%D0%BB%D0%B0%D1%86%D1%96%D1%8F&action=edit&redlink=1" class="new" title="Суперкопілація (такой сторінкы нїт)">суперкомпілація</a> і ин. Выслідком реална ефектівность проґрам на C++ убграничуєся мавучов кваліфікаціёй проґрамісту і вкладеными в конкретный проєкт силы, і «лайдацька» реалізація може доста силно попущат по ефектівности «лайдацькым» реалізаціям на языках бульш высокого руня, што пудтверьджує зрунёвалні спытаня языку<sup id="cite_ref-raytracer2_80-0" class="reference"><a href="#cite_note-raytracer2-80"><span class="cite-bracket">[</span>78<span class="cite-bracket">]</span></a></sup>. То є значущов зашпотков для хоснованя C++ в індустрії <a href="/w/index.php?title=Data_mining&action=edit&redlink=1" class="new" title="Data mining (такой сторінкы нїт)">data mining</a>.</p><div class="mw-highlight mw-highlight-lang-cpp mw-content-ltr" dir="ltr"><pre><span></span><span class="cp">#include</span><span class="w"> </span><span class="cpf"><iostream></span> <span class="c1">// Імпортує всі оголошіня у просторі імен "std" у ґлобалный простур імен.</span> <span class="k">using</span><span class="w"> </span><span class="k">namespace</span><span class="w"> </span><span class="nn">std</span><span class="p">;</span> <span class="kt">int</span><span class="w"> </span><span class="nf">main</span><span class="p">()</span> <span class="p">{</span> <span class="w"> </span><span class="n">cout</span><span class="w"> </span><span class="o"><<</span><span class="w"> </span><span class="s">"Hello, world!"</span><span class="w"> </span><span class="o"><<</span><span class="w"> </span><span class="n">endl</span><span class="p">;</span> <span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="mi">0</span><span class="p">;</span> <span class="p">}</span> </pre></div> <div class="mw-heading mw-heading4"><h4 id="Ефектівне_кроманёваня_тямов"><span id=".D0.95.D1.84.D0.B5.D0.BA.D1.82.D1.96.D0.B2.D0.BD.D0.B5_.D0.BA.D1.80.D0.BE.D0.BC.D0.B0.D0.BD.D1.91.D0.B2.D0.B0.D0.BD.D1.8F_.D1.82.D1.8F.D0.BC.D0.BE.D0.B2"></span>Ефектівне кроманёваня тямов</h4><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=52" title="Едітовати секцію: Ефектівне кроманёваня тямов" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=52" title="Редагувати вихідний код розділу: Ефектівне кроманёваня тямов"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Обязаность по ефектівному кроманёваню тямов лежит ґорґушах розробника і залежит уд умілости розробника. Для автоматічного кроманёваня тямов у C++ традіційно ся хоснувут так называні «розумні указатилі», особне же кроманёваня тямов меншит ефектівность самых проґрамісту. </p><p>Многочисилні реалізації <a href="/w/index.php?title=%D0%A5%D0%B0%D1%80%D1%96%D0%BD%D1%8F_%D0%BC%D1%83%D1%81%D0%BE%D1%80%D0%B0_(%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F)&action=edit&redlink=1" class="new" title="Харіня мусора (проґрамованя) (такой сторінкы нїт)">харіня мусора</a>, такых, ги штатічный <a href="/w/index.php?title=%D0%9A%D1%80%D0%BE%D0%BC%D0%B0%D0%BD%D1%91%D0%B2%D0%B0%D0%BD%D1%8F_%D1%82%D0%B0%D0%BC%D0%BE%D0%B2_%D0%BD%D0%B0_%D0%BE%D1%81%D0%BD%D0%BE%D0%B2%D1%96_%D1%80%D0%B5%D2%91%D1%96%D0%BE%D0%BD%D1%83&action=edit&redlink=1" class="new" title="Кроманёваня тамов на основі реґіону (такой сторінкы нїт)">вывуд реґіону</a>, не примінні для C++ проґрам (май точно, то требує реалізації повирьх языка C++ інтерпретатора нового языка, силно инакого уд C++ і в бульшости обєктівных особностю, і в сполочнуй ідеолоґії) із причины неубходимости прямого доступа ід <a href="/w/index.php?title=%D0%90%D0%B1%D1%81%D1%82%D1%80%D0%B0%D0%BA%D1%82%D0%BD%D0%BE_%D1%81%D1%96%D0%BD%D1%82%D0%B0%D0%BA%D1%81%D1%96%D1%87%D0%BD%D0%B5_%D0%B4%D0%B5%D1%80%D0%B5%D0%B2%D0%BE&action=edit&redlink=1" class="new" title="Абстрактно сінтаксічне дерево (такой сторінкы нїт)">абстрактно сінтаксічному дереву</a>. </p> <div class="mw-heading mw-heading3"><h3 id="Резултатівность"><span id=".D0.A0.D0.B5.D0.B7.D1.83.D0.BB.D1.82.D0.B0.D1.82.D1.96.D0.B2.D0.BD.D0.BE.D1.81.D1.82.D1.8C"></span>Резултатівность</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=53" title="Едітовати секцію: Резултатівность" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=53" title="Редагувати вихідний код розділу: Резултатівность"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Зоодношіня фактору резултатівности із затратами на розробку, а так само сполочну култівовану в сполоченстві проґрамісту дісціпліну і културу проґрамованя важно брати до увагы заказникам, котрі выберавут язык C++ (ай, значит, тых, котрі волівут тот язык розробникам) про реалізацію задуманых ними проєкту, а так само людём, што зачинавуть учитися проґрамованёви, особливо із жаданём проґрамовати про свої потребности. </p> <div class="mw-heading mw-heading4"><h4 id="Квалічность_і_култура_проґрамованя"><span id=".D0.9A.D0.B2.D0.B0.D0.BB.D1.96.D1.87.D0.BD.D0.BE.D1.81.D1.82.D1.8C_.D1.96_.D0.BA.D1.83.D0.BB.D1.82.D1.83.D1.80.D0.B0_.D0.BF.D1.80.D0.BE.D2.91.D1.80.D0.B0.D0.BC.D0.BE.D0.B2.D0.B0.D0.BD.D1.8F"></span>Квалічность і култура проґрамованя</h4><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=54" title="Едітовати секцію: Квалічность і култура проґрамованя" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=54" title="Редагувати вихідний код розділу: Квалічность і култура проґрамованя"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Прінціп C++ «<i>не наязовати „добрый“ штил проґрамованя</i>» перечит промысловому пудходу д проґрамованёви, в котрому головну рол мавут <a href="/w/index.php?title=%D0%9A%D0%B2%D0%B0%D0%BB%D1%96%D1%87%D0%BD%D0%BE%D1%81%D1%82%D1%8C_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B7%D0%B0%D1%81%D0%BE%D0%B1%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F&action=edit&redlink=1" class="new" title="Квалічность проґрамного засобованя (такой сторінкы нїт)">квалічность проґрамного засобованя</a> і можность допровуда кода не лем автором, ай другыми, і котрый май выгодні языкы, што мінімізувут вплыв <a href="/w/index.php?title=%D0%9B%D1%8E%D0%B4%D1%8C%D1%81%D0%BA%D1%8B%D0%B9_%D1%84%D0%B0%D0%BA%D1%82%D0%BE%D1%80&action=edit&redlink=1" class="new" title="Людьскый фактор (такой сторінкы нїт)">людьського фактора</a>, то значит якраз «<i>наязувут „добрый“ штил проґрамованя</i>», ходь такі языкы можут мати веце высокый поруг входжіня. </p><p>Існує думка, же волішность хосноватиля C++ (при можности выбирати алтернатівні языкы) уймовость характерізує професійні можности проґраміста. Наприклад, <a href="/w/index.php?title=%D0%9B%D1%96%D0%BD%D1%83%D1%81_%D0%A2%D0%BE%D1%80%D0%B2%D0%B0%D0%BB%D0%B4%D1%81&action=edit&redlink=1" class="new" title="Лінус Торвалдс (такой сторінкы нїт)">Лінус Торвалдс</a> каже, же позітівна думка кандідату за C++ є про него крітеріём удсіва: C++ — кошмарный язык. Ёго робит іще веце кошмарным тот факт, же много не доста ґрамотных проґрамісту го хоснувут… Удперто кужучи, і кідь не є ніякых причин выберати Цы, кроме того, убы держати C++-проґрамісту подале, то і лем тот аргумент буде доста важливым основанём про хоснованя Цы. </p><p> …Я прийшов до вывода, же дійсно зачну выгнати каждого, ко выбире вести розробку проєкта на C++, а не на Цы, убы тот чилядник не загубив проєкт, у котрый я залученый.</p><div class="ts-Конец_цитаты-source">— <cite><a href="https://ru.wikipedia.org/wiki/%D0%A2%D0%BE%D1%80%D0%B2%D0%B0%D0%BB%D0%B4%D1%81,_%D0%9B%D1%96%D0%BD%D1%83%D1%81" class="extiw" title="ru:Торвалдс, Лінус">Лінус Торвалдс</a>,<sup id="cite_ref-autogenerated1_54-1" class="reference"><a href="#cite_note-autogenerated1-54"><span class="cite-bracket">[</span>54<span class="cite-bracket">]</span></a></sup></cite></div> <div class="mw-heading mw-heading4"><h4 id="Выправліня_выправленого"><span id=".D0.92.D1.8B.D0.BF.D1.80.D0.B0.D0.B2.D0.BB.D1.96.D0.BD.D1.8F_.D0.B2.D1.8B.D0.BF.D1.80.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.BE.D0.B3.D0.BE"></span>Выправліня выправленого</h4><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=55" title="Едітовати секцію: Выправліня выправленого" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=55" title="Редагувати вихідний код розділу: Выправліня выправленого"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Неперерывна еволуція языка побужує (а часом і змушує) проґрамісту раз за разом міняти ужек удладжений код — то не лем дорожит розробку, ай і несе різік увожіня до ужек удладженого кода новых хыб. Наприклад, кідь іззачинаня зворотна сполочность із Цы была єдным із базовых прінціпу C++, уд <a href="/wiki/1999" title="1999">1999 року</a> Цы перестав быти пудмножинов C++, так што ужек удладженый код на Цы не може быти хоснованый в проєктови на C++ без ізмініня. </p> <div class="mw-heading mw-heading4"><h4 id="Тяжкость_подля_самої_тяжкости"><span id=".D0.A2.D1.8F.D0.B6.D0.BA.D0.BE.D1.81.D1.82.D1.8C_.D0.BF.D0.BE.D0.B4.D0.BB.D1.8F_.D1.81.D0.B0.D0.BC.D0.BE.D1.97_.D1.82.D1.8F.D0.B6.D0.BA.D0.BE.D1.81.D1.82.D0.B8"></span>Тяжкость подля самої тяжкости</h4><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=56" title="Едітовати секцію: Тяжкость подля самої тяжкости" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=56" title="Редагувати вихідний код розділу: Тяжкость подля самої тяжкости"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>C++ є окресленый ёго аполоґетами гий «маймоцный» <i>іменно позад того</i>, хоснує небезпечні і взайимно-противні можности. За думанём <a href="/w/index.php?title=%D0%95%D1%80%D1%96%D0%BA_%D0%A0%D0%B5%D0%B9%D0%BC%D0%BE%D0%BD%D0%B4&action=edit&redlink=1" class="new" title="Ерік Реймонд (такой сторінкы нїт)">Еріка Реймонда</a>, то робит язык сам по собі основов про особне самостверджіня проґрамісту, перероблявучи процес розробкы на самоціль. </p><p>Проґрамісты — то часто яркі люди, котрі ся гордять … своёв можностёв справлятися із тяжкостями і шіковно убходитися із абстракціями. Часто ся перед собов змагати, пробувучися выяснити, ко може зотворити «майзапутані і майфайні тяжкости». … Суперникы мнят, же мусят змагатися із чужыми «прикрашанёми» тым, же додадут свої. Доста скоро «масивна ґырча» стане індустріалным штандартом, і всі зачнут хосоновати грубі, переповнині хыбами проґрамы, котрі не можут убрадити онь іх творцю. </p><p>…Такый пудхуд може убернутися псотов, як проґрамісты реалізувут прості речі тяжкыми способами лем зато, же їх знавут і умівут їх хосновати. </p><p>— <cite><a href="https://ru.wikipedia.org/wiki/%D0%A0%D0%B5%D0%B9%D0%BC%D0%BE%D0%BD%D0%B4,_%D0%95%D1%80%D1%96%D0%BA" class="extiw" title="ru:Реймонд, Ерік">Ерік Реймонд</a> в </cite> </p> <div class="mw-heading mw-heading4"><h4 id="Саботаж"><span id=".D0.A1.D0.B0.D0.B1.D0.BE.D1.82.D0.B0.D0.B6"></span>Саботаж</h4><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=57" title="Едітовати секцію: Саботаж" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=57" title="Редагувати вихідний код розділу: Саботаж"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <div class="ts-Конец_цитаты-source">Зафіксовані трафункы, коли лайдацькі програмісты, хоснувучи силну контекстну залежность C++ і недостаток можностю удслідили макровызначіня компілатором, помалили розробку проєкта, коли написали єдне-два лишні, формално коректні із никаня компілатора, рядкы кода, айбо коли впровадили через то тяжко выявитильну, знівыдкы проявлявучуся хыбу. Наприклад:</div><div class="mw-highlight mw-highlight-lang-cpp mw-content-ltr" dir="ltr"><pre><span></span><span class="cp">#define if(a) if(rand())</span> </pre></div><div class="mw-highlight mw-highlight-lang-cpp mw-content-ltr" dir="ltr"><pre><span></span><span class="cp">#define j i</span> </pre></div><p>У <a href="/w/index.php?title=%D0%A7%D0%B8%D1%81%D1%82%D0%BE%D1%82%D0%B0_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B0_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F&action=edit&redlink=1" class="new" title="Чистота языка проґрамованя (такой сторінкы нїт)">языках із доказанов коректностёв</a>, онь із розвинутыми макросредствами, нанести шкоду самарным способом немож. </p><div class="mw-heading mw-heading4"><h4 id="Ненадійность_продукта"><span id=".D0.9D.D0.B5.D0.BD.D0.B0.D0.B4.D1.96.D0.B9.D0.BD.D0.BE.D1.81.D1.82.D1.8C_.D0.BF.D1.80.D0.BE.D0.B4.D1.83.D0.BA.D1.82.D0.B0"></span>Ненадійность продукта</h4><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=58" title="Едітовати секцію: Ненадійность продукта" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=58" title="Редагувати вихідний код розділу: Ненадійность продукта"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Невыправдана бивнота побучных ефекту у спойині із недостатком контрола із бока сістемы часа оконаня языка і слабов сістемов тіпу робит проґрамы на C++ вразливыми до непередвиденых фаталных порух (сполочнознамі «падіня» із увідомлінями ги «Access violation», «Pure virtual function call» авадь «Проґрама оконала недопустиму операцію і буде заперта»), што выключує хоснованя C++ у трафункови грубых требовань д удказостойкости. Кроме того, то іщи додатково ізбульшує триманя самого процеса розробкы. </p> <div class="mw-heading mw-heading4"><h4 id="Менеджмент_проєкту"><span id=".D0.9C.D0.B5.D0.BD.D0.B5.D0.B4.D0.B6.D0.BC.D0.B5.D0.BD.D1.82_.D0.BF.D1.80.D0.BE.D1.94.D0.BA.D1.82.D1.83"></span>Менеджмент проєкту</h4><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=59" title="Едітовати секцію: Менеджмент проєкту" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=59" title="Редагувати вихідний код розділу: Менеджмент проєкту"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>перечислині выще факторы роблят тяжкость менеджмента проєкту на C++ єднов із самых высоких у індустрії розроботкы <a href="/wiki/%D0%9F%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B5_%D0%B7%D0%B0%D0%B1%D0%B5%D1%81%D0%BF%D0%B5%D1%87%D1%96%D0%BD%D1%8F" title="Проґрамове забеспечіня">ПЗ</a>. </p><p>Джеймс Коґґінґс, котрый чотыри годы быв ведучым колонкы в <i>The C++ Report</i>, дає таке поясніня: </p><p>— Проблема є в тому, же проґрамісты, котрі робили в ООП, експеріментовали із кровозмішаными аплікаціями і были націлині на низьку руню абстракції. Наприклад, они будовали класы, гий «зязаный список», взамін «інтерфейс хосноватиля», авадь «зарі радіації», вадь «модел із конченых елементу». Шкода што, стройна провірка тіпу, котра помагає проґрамістам C++ убминати хыб, у тому самому часі утяжчит будованя грубых обєкту із малых. </p><p>— <cite><a href="/w/index.php?title=Ru%D0%B5:%D0%91%D1%80%D1%83%D0%BA%D1%81,_%D0%A4%D1%80%D0%B5%D0%B4%D0%B5%D1%80%D1%96%D0%BA&action=edit&redlink=1" class="new" title="Ruе:Брукс, Фредерік (такой сторінкы нїт)">Ф. Брукс</a>, <a href="/w/index.php?title=Ru%D0%B5:%D0%9C%D1%96%D1%82%D1%96%D1%87%D0%BD%D1%8B%D0%B9_%D1%87%D0%BE%D0%BB%D0%BE%D0%B2%D1%96%D0%BA%D0%BE-%D0%BC%D1%96%D1%81%D1%8F%D1%86%D1%8C&action=edit&redlink=1" class="new" title="Ruе:Мітічный чоловіко-місяць (такой сторінкы нїт)">Мітічный чоловіко-місяць</a></cite> </p> <div class="mw-heading mw-heading2"><h2 id="Вплыв_і_алтернатівы"><span id=".D0.92.D0.BF.D0.BB.D1.8B.D0.B2_.D1.96_.D0.B0.D0.BB.D1.82.D0.B5.D1.80.D0.BD.D0.B0.D1.82.D1.96.D0.B2.D1.8B"></span>Вплыв і алтернатівы</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=60" title="Едітовати секцію: Вплыв і алтернатівы" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=60" title="Редагувати вихідний код розділу: Вплыв і алтернатівы"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <figure class="mw-default-size mw-halign-right" typeof="mw:File/Thumb"><a href="/wiki/%D0%A4%D0%B0%D0%B9%D0%BB:C_Cpp_compare.png" class="mw-file-description"><img src="//upload.wikimedia.org/wikipedia/commons/thumb/b/b9/C_Cpp_compare.png/220px-C_Cpp_compare.png" decoding="async" width="220" height="208" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/b/b9/C_Cpp_compare.png 1.5x" data-file-width="287" data-file-height="271" /></a><figcaption>Проґрама «<a href="/w/index.php?title=Hello,_world!&action=edit&redlink=1" class="new" title="Hello, world! (такой сторінкы нїт)">Hello, world!</a>» на C тай C++.</figcaption></figure> <p>Єдиным прямым наслідником C++ є <a href="/w/index.php?title=D_(%D1%8F%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F)&action=edit&redlink=1" class="new" title="D (язык проґрамованя) (такой сторінкы нїт)">язык D</a>, задуманий як переробка C++ для вылучіня май очевидных го проблем. Авторы удказалися уд сполочности із Цы, усокочувучи сінтаксіс і многі базові прінціпы C++ і уводжувучи в язык можности, характерні для новых языків. В <i>D</i> не є препроцесора, наголовочных файлу, множинного наслідованя, айбо є сістема модулу, інтерфейсы, асоціатівны масивы, пудпора <i><a href="/w/index.php?title=Unicode&action=edit&redlink=1" class="new" title="Unicode (такой сторінкы нїт)">unicode</a></i> у рядках, хяріня нехари (при усокочіню можности особного кроманёваня тямов), вбудована многопоточность, <a href="/w/index.php?title=%D0%92%D1%8B%D0%B2%D1%83%D0%B4_%D1%82%D1%96%D0%BF%D1%83&action=edit&redlink=1" class="new" title="Вывуд тіпу (такой сторінкы нїт)">вывуд тіпу</a>, ясне обявліня чистых функцій і неізмінных значінь. Хоснованя D є доста убграничине, і го мож лічити же реалного конкурента C++. </p><p>Май старый конкурент C++ у задачах низького руня — <a href="/w/index.php?title=Objective-C&action=edit&redlink=1" class="new" title="Objective-C (такой сторінкы нїт)">Objective-C</a>, котрый так само, як C++, є побудованый на спойиню Цы із обєктнов моделов, лем же в Objective-C обєктна модел унаслідована уд <i><a href="/w/index.php?title=Smalltalk&action=edit&redlink=1" class="new" title="Smalltalk (такой сторінкы нїт)">Smalltalk</a></i>. <i>Objective-C</i>, так само як і ёго наслідник <i><a href="/w/index.php?title=Swift&action=edit&redlink=1" class="new" title="Swift (такой сторінкы нїт)">Swift</a></i>, широко ся хоснує для розробкы софтверу пуд <i><a href="/w/index.php?title=MacOS&action=edit&redlink=1" class="new" title="MacOS (такой сторінкы нїт)">macOS</a></i> і <i><a href="/w/index.php?title=IOS&action=edit&redlink=1" class="new" title="IOS (такой сторінкы нїт)">iOS</a></i>. </p><p>Єднов із первых алтернатів C++ у аплікатівнім проґрамованёви став язык <a href="/w/index.php?title=Java&action=edit&redlink=1" class="new" title="Java (такой сторінкы нїт)">Java</a>. Ёго часто неправильно лічат прямым наслідником C++; у дійсности ёго семантіка услідована уд языка <i><a href="/w/index.php?title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D0%B0-2&action=edit&redlink=1" class="new" title="Модула-2 (такой сторінкы нїт)">Модула-2</a></i>, і основі семантікы C++ у <i>Java</i> не є видимі. Беручи до увагы <i>генеолоґію</i> языку (<i>Модула-2</i> є наслідником <i><a href="/w/index.php?title=%D0%A1%D1%96%D0%BC%D1%83%D0%BB%D0%B0&action=edit&redlink=1" class="new" title="Сімула (такой сторінкы нїт)">Сімулы</a></i>, як і <i>C++</i>, айбо ним не є <i>Цы</i>), <i>Java</i> май привильно бы іменовати «троёрудным братом» C++, а не «наслідником». То саме мож уповісти і за язык <i><a href="/w/index.php?title=C_%D0%A8%D0%B0%D1%80%D0%BF&action=edit&redlink=1" class="new" title="C Шарп (такой сторінкы нїт)">C#</a></i>, ходь ступінь ёго самарности ід C++ є веце выразный, гий у <i>Java</i>. </p><p>Спробов спойиня безпечности і шустрости розробкы, характерных для Java і C#, із можностями C++ став <a href="/w/index.php?title=Managed_C%2B%2B&action=edit&redlink=1" class="new" title="Managed C++ (такой сторінкы нїт)">Managed C++</a> (впослідстві — <a href="/w/index.php?title=C%2B%2B/CLI&action=edit&redlink=1" class="new" title="C++/CLI (такой сторінкы нїт)">C++/CLI</a>). Зотвореный <i><a href="/wiki/Microsoft_Corporation" title="Microsoft Corporation">Microsoft</a></i>, головно для переносу існувучых C++-проєкту на платформу <i><a href="/w/index.php?title=Microsoft.NET&action=edit&redlink=1" class="new" title="Microsoft.NET (такой сторінкы нїт)">Microsoft.NET</a></i>. Проґрамы ся оконувут пуд кроманёванём <i><a href="/w/index.php?title=CLR&action=edit&redlink=1" class="new" title="CLR (такой сторінкы нїт)">CLR</a></i> і можут хосновати всьый арсенал бібліотек <i>.NET</i>, айбо накладаєся ряд убграничінь на хоснованя можностю C++, што фактічно зводит C++ до руня <i>C#</i>. Тот діалект не дустав грубого признаня і є хоснованый головно про поязаня бібліотек, написаных на чистому C++, із <i>C#</i>-аплікаціями. </p><p>Алтернатівный путь розвоя языка Цы — ёго спойиня не із ООП, айбо із апплікатівным проґрамованём, то значит поліпшіня абстракції, стройности і модулности низькорунёвых проґрам позад забезпечіня передвидіня повожіня і <a href="/w/index.php?title=%D0%A3%D0%B4%D0%BA%D0%B0%D0%BD%D1%81%D1%8C%D0%BA%D0%B0_%D0%BF%D1%80%D0%BE%D0%B7%D0%BE%D1%80%D0%BE%D1%81%D1%82%D1%8C&action=edit&redlink=1" class="new" title="Удканська прозорость (такой сторінкы нїт)">удканської прозорости</a>. Приміром такых робіт служать языкы <i>BitC, Cyclone</i> і <i>Limbo</i>. </p><p>Ходь і є успішні спробы хоснованя функціоналного проґрамованя у задачах реалного часу без інтеґрації із засобами Цы<sup id="cite_ref-81" class="reference"><a href="#cite_note-81"><span class="cite-bracket">[</span>79<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-82" class="reference"><a href="#cite_note-82"><span class="cite-bracket">[</span>80<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-83" class="reference"><a href="#cite_note-83"><span class="cite-bracket">[</span>81<span class="cite-bracket">]</span></a></sup>, же на даный момент (<a href="/wiki/2013" title="2013">2013 г</a>.) в низькорунёвуй розробцї хоснованя Цы в рузнуй мірі дає майліпше зоудношіня затрудливости і резултатівности. </p><p>Много сил приложили розробникы <i><a href="/w/index.php?title=Python&action=edit&redlink=1" class="new" title="Python (такой сторінкы нїт)">Python</a></i> і <i><a href="/w/index.php?title=Lua&action=edit&redlink=1" class="new" title="Lua (такой сторінкы нїт)">Lua</a></i>, убы забеспечіти іх комфортне хоснованя проґрамістами на C++. ІЗ усьых языку, ізязаных із функціоналнoв парадіґмов, самі Python і Lua майчасто ся хоснувут у спойині із C++ у єднум проєктови. </p><p>Майзначными точками кываня C++ із функціоналным проґрамованём — приязкы бібліотек <a href="/w/index.php?title=WxWidgets&action=edit&redlink=1" class="new" title="WxWidgets (такой сторінкы нїт)">wxWidgets</a> і <a href="/w/index.php?title=Qt&action=edit&redlink=1" class="new" title="Qt (такой сторінкы нїт)">Qt</a> (котрі зотворині в духу ідеолоґії C++) до языку <a href="/w/index.php?title=Lisp&action=edit&redlink=1" class="new" title="Lisp (такой сторінкы нїт)">Lisp</a>, <a href="/w/index.php?title=Haskell&action=edit&redlink=1" class="new" title="Haskell (такой сторінкы нїт)">Haskell</a> і <a href="/w/index.php?title=Python&action=edit&redlink=1" class="new" title="Python (такой сторінкы нїт)">Python</a>. У бцльшости трафунку приязкы до функціоналных языку роблят про бібліотекы, написані на Цы авадь иншых функціоналных языках. </p><p>Щи єдным языком, на котрый никавут ги на конкурент C++, є <a href="/w/index.php?title=Nemerle&action=edit&redlink=1" class="new" title="Nemerle (такой сторінкы нїт)">Nemerle</a> — выслідок поробы спойиня <a href="/w/index.php?title=%D0%9C%D0%BE%D0%B4%D0%B5%D0%BB_%D1%82%D1%96%D0%BF%D1%96%D0%B7%D0%B0%D1%86%D1%96%D1%97_%D0%93%D1%96%D0%BD%D0%B4%D0%BB%D1%96-%D0%9C%D1%96%D0%BB%D0%BD%D0%B5%D1%80%D0%B0&action=edit&redlink=1" class="new" title="Модел тіпізації Гіндлі-Мілнера (такой сторінкы нїт)">модели тіпізації Гіндлі-Мілнера</a> і макропудмножины <a href="/w/index.php?title=Common_Lisp&action=edit&redlink=1" class="new" title="Common Lisp (такой сторінкы нїт)">Common Lisp</a> із языком C#<sup id="cite_ref-84" class="reference"><a href="#cite_note-84"><span class="cite-bracket">[</span>82<span class="cite-bracket">]</span></a></sup>. В тому самому руслі лежит і зотвореный Microsoft язык <a href="/w/index.php?title=F&action=edit&redlink=1" class="new" title="F (такой сторінкы нїт)">F#</a> — діалект <a href="/w/index.php?title=ML&action=edit&redlink=1" class="new" title="ML (такой сторінкы нїт)">ML</a>, адаптованый про міліє .NET. </p><p>Спробов зотворити промыслову заміну Цы і C++ став <a href="/w/index.php?title=Go_(%D1%8F%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F)&action=edit&redlink=1" class="new" title="Go (язык проґрамованя) (такой сторінкы нїт)">Go</a>, розробленый корпораціёв <a href="/w/index.php?title=Google&action=edit&redlink=1" class="new" title="Google (такой сторінкы нїт)">Google</a> в <a href="/wiki/2009" title="2009">2009 році</a>. Авторы языка прямо указали, же го зотворіня было мотівовано недостатками процеса розробкы, выкликаных особностями языку Цы і C++<sup id="cite_ref-designGo2_85-0" class="reference"><a href="#cite_note-designGo2-85"><span class="cite-bracket">[</span>83<span class="cite-bracket">]</span></a></sup>. Go — компактный, простый у штруктурі імператівный язык із <a href="/w/index.php?title=%D0%A6%D1%8B_%D1%81%D0%B0%D0%BC%D0%B0%D1%80%D0%B0%D0%B2%D1%83%D1%87%D1%96_%D1%8F%D0%B7%D1%8B%D0%BA%D1%8B_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F&action=edit&redlink=1" class="new" title="Цы самаравучі языкы проґрамованя (такой сторінкы нїт)">Цы-самаравічым</a> сінтаксісом, без препроцесора, із статічнов тіпізаціёв, стройным контролом тіпу, сістемов пакету, автоматічным кроманёванём тямов, дакотрыми функціоналныма особностями, скромно побудованов ООП-пудсістемов без пудпоры наслідованя імплементації, айбо із інтерфейсами і <a href="/w/index.php?title=%D0%9A%D0%B0%D1%87%D0%BE%D0%B2%D0%B0_%D1%82%D1%96%D0%BF%D1%96%D0%B7%D0%B0%D1%86%D1%96%D1%8F&action=edit&redlink=1" class="new" title="Качова тіпізація (такой сторінкы нїт)">качовов тіпізаціёв</a>, вбудованов многопоточностёв, основанов на зопроґрамах і каналах (в духови <a href="/w/index.php?title=Occam&action=edit&redlink=1" class="new" title="Occam (такой сторінкы нїт)">Occam</a>). </p><p>Язык ся позіціонує як альтернатіва C++, то є передовшиткым засоб для командної розробкы высокоефектівных вылічытильных сістем великої тяжкост, в тому і розподілиных, айбо допущавучуй низькорунёве проґрамованя. </p><p>В єднуй ніші із Цы і C++ є і язык <a href="/w/index.php?title=Rust_(%D1%8F%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F)&action=edit&redlink=1" class="new" title="Rust (язык проґрамованя) (такой сторінкы нїт)">Rust</a>, розробленый у <a href="/wiki/2010" title="2010">2010 годі</a> і пудпрёваный корпораціёв <a href="/w/index.php?title=Mozilla&action=edit&redlink=1" class="new" title="Mozilla (такой сторінкы нїт)">Mozilla</a>. Ёго головна орьєнтація — безпечне кроманёваня тямов без зберача нехари. У частичнуй заміні Цы і C++ на Rust в <a href="/wiki/2019" title="2019">2019 годі</a> заінтеросовалася і корпорація Microsoft<sup id="cite_ref-86" class="reference"><a href="#cite_note-86"><span class="cite-bracket">[</span>84<span class="cite-bracket">]</span></a></sup>. </p><p>У <a href="/wiki/2022" title="2022">2022 годі</a> компанія Google представила експеріменталный язык <a href="/w/index.php?title=Carbon&action=edit&redlink=1" class="new" title="Carbon (такой сторінкы нїт)">Carbon</a>, зотвореный як потенційный наслідник C++. На розділ уд Rust, Carbon має забеспечити двонапрямову сполочность із C++ і ліпшу читабильность кода. </p> <div class="mw-heading mw-heading2"><h2 id="Популарні_проґрамы_зотворині_на_нему"><span id=".D0.9F.D0.BE.D0.BF.D1.83.D0.BB.D0.B0.D1.80.D0.BD.D1.96_.D0.BF.D1.80.D0.BE.D2.91.D1.80.D0.B0.D0.BC.D1.8B_.D0.B7.D0.BE.D1.82.D0.B2.D0.BE.D1.80.D0.B8.D0.BD.D1.96_.D0.BD.D0.B0_.D0.BD.D0.B5.D0.BC.D1.83"></span>Популарні проґрамы зотворині на нему</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=61" title="Едітовати секцію: Популарні проґрамы зотворині на нему" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=61" title="Редагувати вихідний код розділу: Популарні проґрамы зотворині на нему"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li><a href="/w/index.php?title=Opera&action=edit&redlink=1" class="new" title="Opera (такой сторінкы нїт)">Opera</a></li> <li><a href="/w/index.php?title=%CE%9CTorrent&action=edit&redlink=1" class="new" title="ΜTorrent (такой сторінкы нїт)">μTorrent</a></li> <li><a href="/w/index.php?title=Windows_Phone_8.1&action=edit&redlink=1" class="new" title="Windows Phone 8.1 (такой сторінкы нїт)">Windows Phone 8.1</a></li> <li><a href="/w/index.php?title=Google_Chrome&action=edit&redlink=1" class="new" title="Google Chrome (такой сторінкы нїт)">Google Chrome</a></li> <li><a href="/w/index.php?title=Visual_Studio&action=edit&redlink=1" class="new" title="Visual Studio (такой сторінкы нїт)">Visual Studio</a></li> <li><a href="/w/index.php?title=C%2B%2B_Builder&action=edit&redlink=1" class="new" title="C++ Builder (такой сторінкы нїт)">C++ Builder</a></li> <li><a href="/w/index.php?title=CATIA&action=edit&redlink=1" class="new" title="CATIA (такой сторінкы нїт)">CATIA</a></li></ul> <div class="mw-heading mw-heading2"><h2 id="Никай_ся_втож"><span id=".D0.9D.D0.B8.D0.BA.D0.B0.D0.B9_.D1.81.D1.8F_.D0.B2.D1.82.D0.BE.D0.B6"></span>Никай ся втож</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=62" title="Едітовати секцію: Никай ся втож" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=62" title="Редагувати вихідний код розділу: Никай ся втож"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li><a href="/w/index.php?title=%D0%A1_(%D1%8F%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F)&action=edit&redlink=1" class="new" title="С (язык проґрамованя) (такой сторінкы нїт)">С (язык проґрамованя)</a></li> <li><a href="/wiki/%D0%AF%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F" title="Язык проґрамованя">язык проґрамованя</a></li> <li><a href="/wiki/%D0%9E%D0%B1%D1%94%D0%BA%D1%82%D0%BE%D0%B2%D0%BE_%D0%BE%D1%80%D1%8C%D1%94%D0%BD%D1%82%D0%BE%D0%B2%D0%B0%D0%BD%D0%B5_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F" title="Обєктово орьєнтоване проґрамованя">обєктово-орьєнтоване проґрамованя</a></li> <li><a href="/w/index.php?title=Objective-C&action=edit&redlink=1" class="new" title="Objective-C (такой сторінкы нїт)">Objective-C</a></li> <li><a href="/w/index.php?title=Managed_C%2B%2B&action=edit&redlink=1" class="new" title="Managed C++ (такой сторінкы нїт)">Managed C++</a></li> <li><a href="/w/index.php?title=Visual_Studio&action=edit&redlink=1" class="new" title="Visual Studio (такой сторінкы нїт)">Visual Studio</a></li> <li><a href="/w/index.php?title=C%2B%2B_Builder&action=edit&redlink=1" class="new" title="C++ Builder (такой сторінкы нїт)">C++ Builder</a></li></ul> <div class="mw-heading mw-heading2"><h2 id="Пудміткы"><span id=".D0.9F.D1.83.D0.B4.D0.BC.D1.96.D1.82.D0.BA.D1.8B"></span>Пудміткы</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=63" title="Едітовати секцію: Пудміткы" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=63" title="Редагувати вихідний код розділу: Пудміткы"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <div class="mw-references-wrap mw-references-columns"><ol class="references"> <li id="cite_note-1"><span class="mw-cite-backlink"><a href="#cite_ref-1">↑</a></span> <span class="reference-text"><span class="citation"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20160206214150/http://www.stroustrup.com/bs_faq.html#name">Bjarne Stroustrup's FAQ</a> (по en). Bjarne Stroustrup. Ocober 1, 2017. Архівна копія з <a rel="nofollow" class="external text" href="http://www.stroustrup.com/bs_faq.html#name">оріґінала</a> зроблена 2016-02-06<span class="printonly">. <a rel="nofollow" class="external free" href="https://web.archive.org/web/20160206214150/http://www.stroustrup.com/bs_faq.html#name">https://web.archive.org/web/20160206214150/http://www.stroustrup.com/bs_faq.html#name</a></span><span class="reference-accessdate" style="font-size: 75%;">. [перевірено 2017-12-04]</span>. "The name C++ (pronounced "see plus plus")"</span><span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.btitle=Bjarne+Stroustrup%27s+FAQ&rft.atitle=&rft.date=Ocober+1%2C+2017&rft.pub=Bjarne+Stroustrup&rft_id=https%3A%2F%2Fweb.archive.org%2Fweb%2F20160206214150%2Fhttp%3A%2F%2Fwww.stroustrup.com%2Fbs_faq.html%23name&rfr_id=info:sid/en.wikipedia.org:C%2B%2B"><span style="display: none;"> </span></span></span> </li> <li id="cite_note-stroustruptcpppl-2"><span class="mw-cite-backlink"><a href="#cite_ref-stroustruptcpppl_2-0">↑</a></span> <span class="reference-text"><span class="citation"><a href="/w/index.php?title=Bjarne_Stroustrup&action=edit&redlink=1" class="new" title="Bjarne Stroustrup (такой сторінкы нїт)">Stroustrup, Bjarne</a> (1997). <a rel="nofollow" class="external text" href="https://archive.org/details/cprogramminglang00stro_0">1</a>. <i>The C++ Programming Language</i> (Third ed.). Addison-Wesley. <a href="/wiki/International_Standard_Book_Number" class="mw-redirect" title="International Standard Book Number">ISBN</a> <a href="/wiki/%D0%A8%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D0%BD%D0%B0:%D0%96%D1%80%D1%96%D0%B4%D0%BB%D0%B0_%D0%BA%D0%BD%D0%B8%D0%B3/0-201-88954-4" title="Шпеціална:Жрідла книг/0-201-88954-4">0-201-88954-4</a>. <a href="/w/index.php?title=Online_Computer_Library_Center&action=edit&redlink=1" class="new" title="Online Computer Library Center (такой сторінкы нїт)">OCLC</a> <a rel="nofollow" class="external text" href="http://www.worldcat.org/oclc/59193992">59193992</a><span class="printonly">. <a rel="nofollow" class="external free" href="https://archive.org/details/cprogramminglang00stro_0">https://archive.org/details/cprogramminglang00stro_0</a></span>.</span><span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.btitle=1&rft.atitle=The+C%2B%2B+Programming+Language&rft.aulast=Stroustrup&rft.aufirst=Bjarne&rft.au=Stroustrup%2C%26%2332%3BBjarne&rft.date=1997&rft.edition=Third&rft.pub=Addison-Wesley&rft_id=info:oclcnum/59193992&rft.isbn=0-201-88954-4&rft_id=https%3A%2F%2Farchive.org%2Fdetails%2Fcprogramminglang00stro_0&rfr_id=info:sid/en.wikipedia.org:C%2B%2B"><span style="display: none;"> </span></span></span> </li> <li id="cite_note-3"><span class="mw-cite-backlink"><a href="#cite_ref-3">↑</a></span> <span class="reference-text">"<a rel="nofollow" class="external text" href="https://www.iso.org/standard/83626.html">ISO/IEC 14882:2024</a>". International Organization for Standardization. Retrieved 21 October 2020</span> </li> <li id="cite_note-FOOTNOTEШилдт1998-4"><span class="mw-cite-backlink"><a href="#cite_ref-FOOTNOTEШилдт1998_4-0">↑</a></span> <span class="reference-text"><a href="#CITEREFШилдт1998">Шилдт 1998</a>.<span class="error harv-error" style="display: inline; font-size:100%"> Pogreška u predlošku sfn: ne postoji izvor s oznakom: CITEREFШилдт1998 (<a href="/w/index.php?title=%D0%9A%D0%B0%D1%82%D0%B5%D2%91%D0%BE%D1%80%D1%96%D1%8F:Pogre%C5%A1ke_u_predlo%C5%A1cima_za_bilje%C5%A1ke&action=edit&redlink=1" class="new" title="Катеґорія:Pogreške u predlošcima za bilješke (такой сторінкы нїт)">pomoć</a>)</span></span> </li> <li id="cite_note-FOOTNOTEСтрауструп19992.1._Что_такое_C++?-5"><span class="mw-cite-backlink"><a href="#cite_ref-FOOTNOTEСтрауструп19992.1._Что_такое_C++?_5-0">↑</a></span> <span class="reference-text"><a href="#CITEREFСтрауструп1999">Страуструп 1999</a>, 2.1. Что такое C++?.<span class="error harv-error" style="display: inline; font-size:100%"> Pogreška u predlošku sfn: ne postoji izvor s oznakom: CITEREFСтрауструп1999 (<a href="/w/index.php?title=%D0%9A%D0%B0%D1%82%D0%B5%D2%91%D0%BE%D1%80%D1%96%D1%8F:Pogre%C5%A1ke_u_predlo%C5%A1cima_za_bilje%C5%A1ke&action=edit&redlink=1" class="new" title="Катеґорія:Pogreške u predlošcima za bilješke (такой сторінкы нїт)">pomoć</a>)</span></span> </li> <li id="cite_note-FOOTNOTEСтрауструп1999-6"><span class="mw-cite-backlink">↑ <sup><a href="#cite_ref-FOOTNOTEСтрауструп1999_6-0">6,0</a></sup> <sup><a href="#cite_ref-FOOTNOTEСтрауструп1999_6-1">6,1</a></sup></span> <span class="reference-text"><a href="#CITEREFСтрауструп1999">Страуструп 1999</a>.<span class="error harv-error" style="display: inline; font-size:100%"> Pogreška u predlošku sfn: ne postoji izvor s oznakom: CITEREFСтрауструп1999 (<a href="/w/index.php?title=%D0%9A%D0%B0%D1%82%D0%B5%D2%91%D0%BE%D1%80%D1%96%D1%8F:Pogre%C5%A1ke_u_predlo%C5%A1cima_za_bilje%C5%A1ke&action=edit&redlink=1" class="new" title="Катеґорія:Pogreške u predlošcima za bilješke (такой сторінкы нїт)">pomoć</a>)</span></span> </li> <li id="cite_note-7"><span class="mw-cite-backlink"><a href="#cite_ref-7">↑</a></span> <span class="reference-text"><a href="/w/index.php?title=%D0%A8%D0%B0%D0%B1%D0%BB%D0%BE%D0%BD%D0%B0:Cytuj_stron%C4%99&action=edit&redlink=1" class="new" title="Шаблона:Cytuj stronę (такой сторінкы нїт)">Шаблона:Cytuj stronę</a></span> </li> <li id="cite_note-8"><span class="mw-cite-backlink"><a href="#cite_ref-8">↑</a></span> <span class="reference-text"><a href="/w/index.php?title=%D0%A8%D0%B0%D0%B1%D0%BB%D0%BE%D0%BD%D0%B0:Cytuj&action=edit&redlink=1" class="new" title="Шаблона:Cytuj (такой сторінкы нїт)">Шаблона:Cytuj</a></span> </li> <li id="cite_note-9"><span class="mw-cite-backlink"><a href="#cite_ref-9">↑</a></span> <span class="reference-text">Стэнли Липпман, <a rel="nofollow" class="external text" href="http://msdn.microsoft.com/en-us/magazine/cc163681.aspx">Pure C++: Hello, C++/CLI</a> <a href="/w/index.php?title=%D0%A8%D0%B0%D0%B1%D0%BB%D0%BE%D0%BD%D0%B0:Wayback&action=edit&redlink=1" class="new" title="Шаблона:Wayback (такой сторінкы нїт)">Шаблона:Wayback</a></span> </li> <li id="cite_note-10"><span class="mw-cite-backlink"><a href="#cite_ref-10">↑</a></span> <span class="reference-text"><span class="citation"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20101120215619/http://www.open-std.org/jtc1/sc22/wg21/docs/standards">C++ — Standards</a>. Архівна копія з <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg21/docs/standards">оріґінала</a> зроблена 2010-11-20<span class="printonly">. <a rel="nofollow" class="external free" href="https://web.archive.org/web/20101120215619/http://www.open-std.org/jtc1/sc22/wg21/docs/standards">https://web.archive.org/web/20101120215619/http://www.open-std.org/jtc1/sc22/wg21/docs/standards</a></span><span class="reference-accessdate" style="font-size: 75%;">. [перевірено 2010-11-14]</span>.</span><span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.btitle=C%2B%2B%C2%A0%E2%80%94+Standards&rft.atitle=&rft_id=https%3A%2F%2Fweb.archive.org%2Fweb%2F20101120215619%2Fhttp%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg21%2Fdocs%2Fstandards&rfr_id=info:sid/en.wikipedia.org:C%2B%2B"><span style="display: none;"> </span></span></span> </li> <li id="cite_note-11"><span class="mw-cite-backlink"><a href="#cite_ref-11">↑</a></span> <span class="reference-text"><a href="/w/index.php?title=%D0%A8%D0%B0%D0%B1%D0%BB%D0%BE%D0%BD%D0%B0:Cite_press_release&action=edit&redlink=1" class="new" title="Шаблона:Cite press release (такой сторінкы нїт)">Шаблона:Cite press release</a></span> </li> <li id="cite_note-12"><span class="mw-cite-backlink"><a href="#cite_ref-12">↑</a></span> <span class="reference-text"><span class="citation">TIOBE (November 2024). <a rel="nofollow" class="external text" href="https://www.tiobe.com/tiobe-index/">TIOBE Index for November 2024</a>. TIOBE Company<span class="printonly">. <a rel="nofollow" class="external free" href="https://www.tiobe.com/tiobe-index/">https://www.tiobe.com/tiobe-index/</a></span><span class="reference-accessdate" style="font-size: 75%;">. [перевірено 18 November 2024]</span>.</span><span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.btitle=TIOBE+Index+for+November+2024&rft.atitle=&rft.aulast=TIOBE&rft.au=TIOBE&rft.date=November+2024&rft.pub=TIOBE+Company&rft_id=https%3A%2F%2Fwww.tiobe.com%2Ftiobe-index%2F&rfr_id=info:sid/en.wikipedia.org:C%2B%2B"><span style="display: none;"> </span></span></span> </li> <li id="cite_note-1st-edition3-13"><span class="mw-cite-backlink"><a href="#cite_ref-1st-edition3_13-0">↑</a></span> <span class="reference-text"><span class="citation">Страуструп, Бярен. <a rel="nofollow" class="external text" href="http://www.stroustrup.com/1st.html">The C++ Programming Language</a><span class="printonly">. <a rel="nofollow" class="external free" href="http://www.stroustrup.com/1st.html">http://www.stroustrup.com/1st.html</a></span><span class="reference-accessdate" style="font-size: 75%;">. [перевірено 16 September 2010]</span>.</span><span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.btitle=The+C%2B%2B+Programming+Language&rft.atitle=&rft.aulast=%D0%A1%D1%82%D1%80%D0%B0%D1%83%D1%81%D1%82%D1%80%D1%83%D0%BF&rft.aufirst=%D0%91%D1%8F%D1%80%D0%B5%D0%BD&rft.au=%D0%A1%D1%82%D1%80%D0%B0%D1%83%D1%81%D1%82%D1%80%D1%83%D0%BF%2C%26%2332%3B%D0%91%D1%8F%D1%80%D0%B5%D0%BD&rft_id=http%3A%2F%2Fwww.stroustrup.com%2F1st.html&rfr_id=info:sid/en.wikipedia.org:C%2B%2B"><span style="display: none;"> </span></span></span> </li> <li id="cite_note-14"><span class="mw-cite-backlink"><a href="#cite_ref-14">↑</a></span> <span class="reference-text"><i>Страуструп, Бярне (7 Марца 2010). "<a rel="nofollow" class="external text" href="https://www.stroustrup.com/bs_faq.html#invention">Bjarne Stroustrup's FAQ: When was C++ invented?</a>". stroustrup.com. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20160206214150/http://www.stroustrup.com/bs_faq.html#invention">Archived</a> з оріґінала 6 фебруара 2016 года. Одержано 16 септембра 2010 года.</i></span> </li> <li id="cite_note-STL-15"><span class="mw-cite-backlink"><a href="#cite_ref-STL_15-0">↑</a></span> <span class="reference-text"><a href="/w/index.php?title=%D0%A8%D0%B0%D0%B1%D0%BB%D0%BE%D0%BD%D0%B0:Citar_web&action=edit&redlink=1" class="new" title="Шаблона:Citar web (такой сторінкы нїт)">Шаблона:Citar web</a></span> </li> <li id="cite_note-16"><span class="mw-cite-backlink"><a href="#cite_ref-16">↑</a></span> <span class="reference-text"><span class="citation">Bjarne Stroustrup.. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20110501150638/http://www2.research.att.com/~bs/glossary.html">C++ Glossary</a>. Архівна копія з <a rel="nofollow" class="external text" href="http://www.research.att.com/~bs/glossary.html">оріґінала</a> зроблена 2011-05-01<span class="printonly">. <a rel="nofollow" class="external free" href="https://web.archive.org/web/20110501150638/http://www2.research.att.com/~bs/glossary.html">https://web.archive.org/web/20110501150638/http://www2.research.att.com/~bs/glossary.html</a></span><span class="reference-accessdate" style="font-size: 75%;">. [перевірено 2007-06-08]</span>.</span><span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.btitle=C%2B%2B+Glossary&rft.atitle=&rft.aulast=Bjarne+Stroustrup.&rft.au=Bjarne+Stroustrup.&rft_id=https%3A%2F%2Fweb.archive.org%2Fweb%2F20110501150638%2Fhttp%3A%2F%2Fwww2.research.att.com%2F%7Ebs%2Fglossary.html&rfr_id=info:sid/en.wikipedia.org:C%2B%2B"><span style="display: none;"> </span></span></span> </li> <li id="cite_note-sozd-17"><span class="mw-cite-backlink"><a href="#cite_ref-sozd_17-0">↑</a></span> <span class="reference-text"><span class="citation"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20180829212016/http://www.iksmedia.ru/news/5298228-Yandeks-sozdaet-rabochuyu-gruppu.html">Яндекс организует рабочую группу по стандартизации языка C++</a> (по ru). ИКС Медиа. Архівна копія з <a rel="nofollow" class="external text" href="http://www.iksmedia.ru/news/5298228-Yandeks-sozdaet-rabochuyu-gruppu.html">оріґінала</a> зроблена 2018-08-29<span class="printonly">. <a rel="nofollow" class="external free" href="https://web.archive.org/web/20180829212016/http://www.iksmedia.ru/news/5298228-Yandeks-sozdaet-rabochuyu-gruppu.html">https://web.archive.org/web/20180829212016/http://www.iksmedia.ru/news/5298228-Yandeks-sozdaet-rabochuyu-gruppu.html</a></span><span class="reference-accessdate" style="font-size: 75%;">. [перевірено 2018-08-29]</span>.</span><span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.btitle=%D0%AF%D0%BD%D0%B4%D0%B5%D0%BA%D1%81+%D0%BE%D1%80%D0%B3%D0%B0%D0%BD%D0%B8%D0%B7%D1%83%D0%B5%D1%82+%D1%80%D0%B0%D0%B1%D0%BE%D1%87%D1%83%D1%8E+%D0%B3%D1%80%D1%83%D0%BF%D0%BF%D1%83+%D0%BF%D0%BE+%D1%81%D1%82%D0%B0%D0%BD%D0%B4%D0%B0%D1%80%D1%82%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D0%B8+%D1%8F%D0%B7%D1%8B%D0%BA%D0%B0+C%2B%2B&rft.atitle=&rft.pub=%D0%98%D0%9A%D0%A1+%D0%9C%D0%B5%D0%B4%D0%B8%D0%B0&rft_id=https%3A%2F%2Fweb.archive.org%2Fweb%2F20180829212016%2Fhttp%3A%2F%2Fwww.iksmedia.ru%2Fnews%2F5298228-Yandeks-sozdaet-rabochuyu-gruppu.html&rfr_id=info:sid/en.wikipedia.org:C%2B%2B"><span style="display: none;"> </span></span></span> </li> <li id="cite_note-FOOTNOTEСтрауструп19991.4._Исторические_замечания-18"><span class="mw-cite-backlink"><a href="#cite_ref-FOOTNOTEСтрауструп19991.4._Исторические_замечания_18-0">↑</a></span> <span class="reference-text"><a href="#CITEREFСтрауструп1999">Страуструп 1999</a>, 1.4. Исторические замечания.<span class="error harv-error" style="display: inline; font-size:100%"> Pogreška u predlošku sfn: ne postoji izvor s oznakom: CITEREFСтрауструп1999 (<a href="/w/index.php?title=%D0%9A%D0%B0%D1%82%D0%B5%D2%91%D0%BE%D1%80%D1%96%D1%8F:Pogre%C5%A1ke_u_predlo%C5%A1cima_za_bilje%C5%A1ke&action=edit&redlink=1" class="new" title="Катеґорія:Pogreške u predlošcima za bilješke (такой сторінкы нїт)">pomoć</a>)</span></span> </li> <li id="cite_note-FOOTNOTEСтрауструп,_Дизайн_и_эволюция_C++2007-19"><span class="mw-cite-backlink"><a href="#cite_ref-FOOTNOTEСтрауструп,_Дизайн_и_эволюция_C++2007_19-0">↑</a></span> <span class="reference-text"><a href="#CITEREFСтрауструп,_Дизайн_и_эволюция_C++2007">Страуструп, Дизайн и эволюция C++ 2007</a>.<span class="error harv-error" style="display: inline; font-size:100%"> Pogreška u predlošku sfn: ne postoji izvor s oznakom: CITEREFСтрауструп,_Дизайн_и_эволюция_C++2007 (<a href="/w/index.php?title=%D0%9A%D0%B0%D1%82%D0%B5%D2%91%D0%BE%D1%80%D1%96%D1%8F:Pogre%C5%A1ke_u_predlo%C5%A1cima_za_bilje%C5%A1ke&action=edit&redlink=1" class="new" title="Катеґорія:Pogreške u predlošcima za bilješke (такой сторінкы нїт)">pomoć</a>)</span></span> </li> <li id="cite_note-20"><span class="mw-cite-backlink"><a href="#cite_ref-20">↑</a></span> <span class="reference-text">тіпы даных C++ із сайта <a rel="nofollow" class="external text" href="https://learn.microsoft.com/uk-ua/cpp/cpp/data-type-ranges?view=msvc-170">Microsoft</a> <a rel="nofollow" class="external free" href="https://learn.microsoft.com/uk-ua/cpp/cpp/data-type-ranges?view=msvc-170">https://learn.microsoft.com/uk-ua/cpp/cpp/data-type-ranges?view=msvc-170</a></span> </li> <li id="cite_note-21"><span class="mw-cite-backlink"><a href="#cite_ref-21">↑</a></span> <span class="reference-text"><a rel="nofollow" class="external free" href="https://learn.microsoft.com/uk-ua/cpp/cpp/char-wchar-t-char16-t-char32-t?view=msvc-170">https://learn.microsoft.com/uk-ua/cpp/cpp/char-wchar-t-char16-t-char32-t?view=msvc-170</a> </span> </li> <li id="cite_note-22"><span class="mw-cite-backlink"><a href="#cite_ref-22">↑</a></span> <span class="reference-text"><a rel="nofollow" class="external free" href="https://ravesli.com/urok-35-simvolnyj-tip-dannyh-char/#toc-7">https://ravesli.com/urok-35-simvolnyj-tip-dannyh-char/#toc-7</a></span> </li> <li id="cite_note-:1-23"><span class="mw-cite-backlink">↑ <sup><a href="#cite_ref-:1_23-0">23,0</a></sup> <sup><a href="#cite_ref-:1_23-1">23,1</a></sup> <sup><a href="#cite_ref-:1_23-2">23,2</a></sup> <sup><a href="#cite_ref-:1_23-3">23,3</a></sup></span> <span class="reference-text">тіпы даных C++ із сайта <a rel="nofollow" class="external text" href="https://learn.microsoft.com/uk-ua/cpp/cpp/data-type-ranges?view=msvc-170">Microsoft</a> <a rel="nofollow" class="external free" href="https://learn.microsoft.com/uk-ua/cpp/cpp/data-type-ranges?view=msvc-170">https://learn.microsoft.com/uk-ua/cpp/cpp/data-type-ranges?view=msvc-170</a></span> </li> <li id="cite_note-:2-24"><span class="mw-cite-backlink">↑ <sup><a href="#cite_ref-:2_24-0">24,0</a></sup> <sup><a href="#cite_ref-:2_24-1">24,1</a></sup></span> <span class="reference-text"><a rel="nofollow" class="external free" href="https://learn.microsoft.com/ru-ru/cpp/cpp/int8-int16-int32-int64?view=msvc-170">https://learn.microsoft.com/ru-ru/cpp/cpp/int8-int16-int32-int64?view=msvc-170</a></span> </li> <li id="cite_note-:0-25"><span class="mw-cite-backlink">↑ <sup><a href="#cite_ref-:0_25-0">25,0</a></sup> <sup><a href="#cite_ref-:0_25-1">25,1</a></sup> <sup><a href="#cite_ref-:0_25-2">25,2</a></sup> <sup><a href="#cite_ref-:0_25-3">25,3</a></sup></span> <span class="reference-text"><a rel="nofollow" class="external free" href="https://acode.com.ua/urok-34-tsilochyselni-typy-danyh-short-int-i-long/#toc-2">https://acode.com.ua/urok-34-tsilochyselni-typy-danyh-short-int-i-long/#toc-2</a></span> </li> <li id="cite_note-26"><span class="mw-cite-backlink"><a href="#cite_ref-26">↑</a></span> <span class="reference-text">bool тіп даных <a rel="nofollow" class="external free" href="https://learn.microsoft.com/en-gb/cpp/cpp/bool-cpp?view=msvc-170">https://learn.microsoft.com/en-gb/cpp/cpp/bool-cpp?view=msvc-170</a></span> </li> <li id="cite_note-27"><span class="mw-cite-backlink"><a href="#cite_ref-27">↑</a></span> <span class="reference-text">ISO/IEC 14882:1998, раздел 6.4, пункт 4: «The value of a <i>condition</i> that is an initialized declaration in a statement other than a <code>switch</code> statement is the value of the declared variable implicitly converted to <code>bool</code> … The value of a <i>condition</i> that is an expression is the value of the expression, implicitly converted to <code>bool</code> for statements other than <code>switch</code>; if that conversion is ill-formed, the program is ill-formed».</span> </li> <li id="cite_note-28"><span class="mw-cite-backlink"><a href="#cite_ref-28">↑</a></span> <span class="reference-text">false тіп даных <a rel="nofollow" class="external free" href="https://learn.microsoft.com/en-gb/cpp/cpp/false-cpp?view=msvc-170">https://learn.microsoft.com/en-gb/cpp/cpp/false-cpp?view=msvc-170</a></span> </li> <li id="cite_note-29"><span class="mw-cite-backlink"><a href="#cite_ref-29">↑</a></span> <span class="reference-text">true тіп даных <a rel="nofollow" class="external free" href="https://learn.microsoft.com/ru-ru/cpp/cpp/true-cpp?view=msvc-170">https://learn.microsoft.com/ru-ru/cpp/cpp/true-cpp?view=msvc-170</a></span> </li> <li id="cite_note-30"><span class="mw-cite-backlink"><a href="#cite_ref-30">↑</a></span> <span class="reference-text"><span class="citation"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20180607183150/http://www.stlport.org/">STLport: Welcome!</a>. Архівна копія з <a rel="nofollow" class="external text" href="http://www.stlport.org/">оріґінала</a> зроблена 2018-06-07<span class="printonly">. <a rel="nofollow" class="external free" href="https://web.archive.org/web/20180607183150/http://www.stlport.org/">https://web.archive.org/web/20180607183150/http://www.stlport.org/</a></span><span class="reference-accessdate" style="font-size: 75%;">. [перевірено 2007-07-26]</span>.</span><span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.btitle=STLport%3A+Welcome%21&rft.atitle=&rft_id=https%3A%2F%2Fweb.archive.org%2Fweb%2F20180607183150%2Fhttp%3A%2F%2Fwww.stlport.org%2F&rfr_id=info:sid/en.wikipedia.org:C%2B%2B"><span style="display: none;"> </span></span></span> </li> <li id="cite_note-31"><span class="mw-cite-backlink"><a href="#cite_ref-31">↑</a></span> <span class="reference-text"><span class="citation"><a rel="nofollow" class="external text" href="http://en.cppreference.com/w/cpp/container/vector">std::vector — cppreference.com</a><span class="printonly">. <a rel="nofollow" class="external free" href="http://en.cppreference.com/w/cpp/container/vector">http://en.cppreference.com/w/cpp/container/vector</a></span><span class="reference-accessdate" style="font-size: 75%;">. [перевірено 2015-11-28]</span>.</span><span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.btitle=std%3A%3Avector%C2%A0%E2%80%94+cppreference.com&rft.atitle=&rft_id=http%3A%2F%2Fen.cppreference.com%2Fw%2Fcpp%2Fcontainer%2Fvector&rfr_id=info:sid/en.wikipedia.org:C%2B%2B"><span style="display: none;"> </span></span></span> </li> <li id="cite_note-32"><span class="mw-cite-backlink"><a href="#cite_ref-32">↑</a></span> <span class="reference-text"><span class="citation"><a rel="nofollow" class="external text" href="http://en.cppreference.com/w/cpp/memory/c/realloc">std::realloc — cppreference.com</a><span class="printonly">. <a rel="nofollow" class="external free" href="http://en.cppreference.com/w/cpp/memory/c/realloc">http://en.cppreference.com/w/cpp/memory/c/realloc</a></span><span class="reference-accessdate" style="font-size: 75%;">. [перевірено 2015-11-28]</span>.</span><span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.btitle=std%3A%3Arealloc%C2%A0%E2%80%94+cppreference.com&rft.atitle=&rft_id=http%3A%2F%2Fen.cppreference.com%2Fw%2Fcpp%2Fmemory%2Fc%2Frealloc&rfr_id=info:sid/en.wikipedia.org:C%2B%2B"><span style="display: none;"> </span></span></span> </li> <li id="cite_note-33"><span class="mw-cite-backlink"><a href="#cite_ref-33">↑</a></span> <span class="reference-text"><span class="citation"><a rel="nofollow" class="external text" href="https://www.iso.org/standard/83626.html">ISO/IEC 14882:2024 Programming languages — C++</a><span class="printonly">. <a rel="nofollow" class="external free" href="https://www.iso.org/standard/83626.html">https://www.iso.org/standard/83626.html</a></span>.</span><span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.btitle=ISO%2FIEC+14882%3A2024+Programming+languages+%E2%80%94+C%2B%2B&rft.atitle=&rft_id=https%3A%2F%2Fwww.iso.org%2Fstandard%2F83626.html&rfr_id=info:sid/en.wikipedia.org:C%2B%2B"><span style="display: none;"> </span></span></span> </li> <li id="cite_note-34"><span class="mw-cite-backlink"><a href="#cite_ref-34">↑</a></span> <span class="reference-text"><span class="citation"><a rel="nofollow" class="external text" href="https://herbsutter.com/2023/02/13/c23-pandemic-edition-is-complete-trip-report-winter-iso-c-standards-meeting-issaquah-wa-usa/">C++23 "Pandemic Edition" is complete (Trip report: Winter ISO C++ standards meeting, Issaquah, WA, USA)</a>. 13 February 2023<span class="printonly">. <a rel="nofollow" class="external free" href="https://herbsutter.com/2023/02/13/c23-pandemic-edition-is-complete-trip-report-winter-iso-c-standards-meeting-issaquah-wa-usa/">https://herbsutter.com/2023/02/13/c23-pandemic-edition-is-complete-trip-report-winter-iso-c-standards-meeting-issaquah-wa-usa/</a></span>.</span><span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.btitle=C%2B%2B23+%22Pandemic+Edition%22+is+complete+%28Trip+report%3A+Winter+ISO+C%2B%2B+standards+meeting%2C+Issaquah%2C+WA%2C+USA%29&rft.atitle=&rft.date=13+February+2023&rft_id=https%3A%2F%2Fherbsutter.com%2F2023%2F02%2F13%2Fc23-pandemic-edition-is-complete-trip-report-winter-iso-c-standards-meeting-issaquah-wa-usa%2F&rfr_id=info:sid/en.wikipedia.org:C%2B%2B"><span style="display: none;"> </span></span></span> </li> <li id="cite_note-35"><span class="mw-cite-backlink"><a href="#cite_ref-35">↑</a></span> <span class="reference-text"><span class="citation"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2024/n4981.pdf">Working Draft, Standard for Programming Language C++</a>. ISO/IEC. 2024-04-16<span class="printonly">. <a rel="nofollow" class="external free" href="https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2024/n4981.pdf">https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2024/n4981.pdf</a></span>.</span><span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.btitle=Working+Draft%2C+Standard+for+Programming+Language+C%2B%2B&rft.atitle=&rft.date=2024-04-16&rft.pub=ISO%2FIEC&rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg21%2Fdocs%2Fpapers%2F2024%2Fn4981.pdf&rfr_id=info:sid/en.wikipedia.org:C%2B%2B"><span style="display: none;"> </span></span></span> </li> <li id="cite_note-36"><span class="mw-cite-backlink"><a href="#cite_ref-36">↑</a></span> <span class="reference-text"><span class="citation"><a rel="nofollow" class="external text" href="http://www.codenet.ru/progr/cpp/straustrup.php">Интервью Б. Страуструпа LinuxWorld.com</a><span class="printonly">. <a rel="nofollow" class="external free" href="http://www.codenet.ru/progr/cpp/straustrup.php">http://www.codenet.ru/progr/cpp/straustrup.php</a></span><span class="reference-accessdate" style="font-size: 75%;">. [перевірено 2013-01-04]</span>.</span><span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.btitle=%D0%98%D0%BD%D1%82%D0%B5%D1%80%D0%B2%D1%8C%D1%8E+%D0%91.+%D0%A1%D1%82%D1%80%D0%B0%D1%83%D1%81%D1%82%D1%80%D1%83%D0%BF%D0%B0+LinuxWorld.com&rft.atitle=&rft_id=http%3A%2F%2Fwww.codenet.ru%2Fprogr%2Fcpp%2Fstraustrup.php&rfr_id=info:sid/en.wikipedia.org:C%2B%2B"><span style="display: none;"> </span></span></span> </li> <li id="cite_note-37"><span class="mw-cite-backlink"><a href="#cite_ref-37">↑</a></span> <span class="reference-text"><span class="citation"><a rel="nofollow" class="external text" href="http://samag.ru/archive/article/1034">Интервью Б. Страуструпа журналу «Системный администратор»</a><span class="printonly">. <a rel="nofollow" class="external free" href="http://samag.ru/archive/article/1034">http://samag.ru/archive/article/1034</a></span><span class="reference-accessdate" style="font-size: 75%;">. [перевірено 2013-01-04]</span>.</span><span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.btitle=%D0%98%D0%BD%D1%82%D0%B5%D1%80%D0%B2%D1%8C%D1%8E+%D0%91.+%D0%A1%D1%82%D1%80%D0%B0%D1%83%D1%81%D1%82%D1%80%D1%83%D0%BF%D0%B0+%D0%B6%D1%83%D1%80%D0%BD%D0%B0%D0%BB%D1%83+%C2%AB%D0%A1%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%BD%D1%8B%D0%B9+%D0%B0%D0%B4%D0%BC%D0%B8%D0%BD%D0%B8%D1%81%D1%82%D1%80%D0%B0%D1%82%D0%BE%D1%80%C2%BB&rft.atitle=&rft_id=http%3A%2F%2Fsamag.ru%2Farchive%2Farticle%2F1034&rfr_id=info:sid/en.wikipedia.org:C%2B%2B"><span style="display: none;"> </span></span></span> </li> <li id="cite_note-38"><span class="mw-cite-backlink"><a href="#cite_ref-38">↑</a></span> <span class="reference-text"><span class="citation"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20150317122705/http://www.cnews.ru/reviews/index.shtml?2010%2F09%2F29%2F410282">CNews: Эксклюзивное интервью с создателем языка программирования C++</a>. Архівна копія з <a rel="nofollow" class="external text" href="https://www.cnews.ru/reviews/index.shtml?2010%2F09%2F29%2F410282">оріґінала</a> зроблена 2015-03-17<span class="printonly">. <a rel="nofollow" class="external free" href="https://web.archive.org/web/20150317122705/http://www.cnews.ru/reviews/index.shtml?2010%2F09%2F29%2F410282">https://web.archive.org/web/20150317122705/http://www.cnews.ru/reviews/index.shtml?2010%2F09%2F29%2F410282</a></span><span class="reference-accessdate" style="font-size: 75%;">. [перевірено 2019-11-01]</span>.</span><span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.btitle=CNews%3A+%D0%AD%D0%BA%D1%81%D0%BA%D0%BB%D1%8E%D0%B7%D0%B8%D0%B2%D0%BD%D0%BE%D0%B5+%D0%B8%D0%BD%D1%82%D0%B5%D1%80%D0%B2%D1%8C%D1%8E+%D1%81+%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D1%82%D0%B5%D0%BB%D0%B5%D0%BC+%D1%8F%D0%B7%D1%8B%D0%BA%D0%B0+%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F+C%2B%2B&rft.atitle=&rft_id=https%3A%2F%2Fweb.archive.org%2Fweb%2F20150317122705%2Fhttp%3A%2F%2Fwww.cnews.ru%2Freviews%2Findex.shtml%3F2010%252F09%252F29%252F410282&rfr_id=info:sid/en.wikipedia.org:C%2B%2B"><span style="display: none;"> </span></span></span> </li> <li id="cite_note-haskell4-39"><span class="mw-cite-backlink"><a href="#cite_ref-haskell4_39-0">↑</a></span> <span class="reference-text">An Experiment in Software Prototyping Productivity. Paul Hudak, Mark P. Jones. Yale University, Department of Computer Science, New Haven, CT 06518. July 4, 1994.</span> </li> <li id="cite_note-40"><span class="mw-cite-backlink"><a href="#cite_ref-40">↑</a></span> <span class="reference-text"><span class="citation" id="CITEREFCzarnecki,_O’Donnell,_Striegnitz,_Taha"><i>K. Czarnecki, J. O’Donnell, J. Striegnitz, W. Taha</i>. {{{тітул}}}. <small><a rel="nofollow" class="external text" href="https://web.archive.org/web/20220407022648/https://www.researchgate.net/publication/221025927_DSL_implementation_in_MetaOCaml_template_Haskell_and_C">Архивировано</a> из первоисточника 7 апріля 2022.</small></span>. Цитата: <i>C++ Template Metaprogramming suffers from a number of limitations, including portability problems due to compiler limitations (although this has significantly improved in the last few years), lack of debugging support or IO during template instantiation, long compilation times, long and incomprehensible errors, poor readability of the code, and poor error reporting.</i></span> </li> <li id="cite_note-perhelt2-41"><span class="mw-cite-backlink"><a href="#cite_ref-perhelt2_41-0">↑</a></span> <span class="reference-text"><span class="citation">Lutz Prechelt (<a href="/w/index.php?title=%D0%A2%D0%B5%D1%85%D0%BD%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B9_%D0%B8%D0%BD%D1%81%D1%82%D0%B8%D1%82%D1%83%D1%82_%D0%9A%D0%B0%D1%80%D0%BB%D1%81%D1%80%D1%83%D1%8D&action=edit&redlink=1" class="new" title="Технологический институт Карлсруэ (такой сторінкы нїт)">Universität Karlsruhe</a>) (2000-03-14). <a rel="nofollow" class="external text" href="http://page.mi.fu-berlin.de/prechelt/Biblio/jccpprt_computer2000.pdf">An empirical comparison of C, C++, Java, Perl, Python, Rexx, and Tcl for a search/string-processing program</a> (pdf)<span class="printonly">. <a rel="nofollow" class="external free" href="http://page.mi.fu-berlin.de/prechelt/Biblio/jccpprt_computer2000.pdf">http://page.mi.fu-berlin.de/prechelt/Biblio/jccpprt_computer2000.pdf</a></span><span class="reference-accessdate" style="font-size: 75%;">. [перевірено 2019-11-20]</span>.</span><span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.btitle=An+empirical+comparison+of+C%2C+C%2B%2B%2C+Java%2C+Perl%2C+Python%2C+Rexx%2C+and+Tcl+for+a+search%2Fstring-processing+program&rft.atitle=&rft.aulast=Lutz+Prechelt+%28%5B%5B%D0%A2%D0%B5%D1%85%D0%BD%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B9+%D0%B8%D0%BD%D1%81%D1%82%D0%B8%D1%82%D1%83%D1%82+%D0%9A%D0%B0%D1%80%D0%BB%D1%81%D1%80%D1%83%D1%8D%7CUniversit%C3%A4t+Karlsruhe%5D%5D%29&rft.au=Lutz+Prechelt+%28%5B%5B%D0%A2%D0%B5%D1%85%D0%BD%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B9+%D0%B8%D0%BD%D1%81%D1%82%D0%B8%D1%82%D1%83%D1%82+%D0%9A%D0%B0%D1%80%D0%BB%D1%81%D1%80%D1%83%D1%8D%7CUniversit%C3%A4t+Karlsruhe%5D%5D%29&rft.date=2000-03-14&rft_id=http%3A%2F%2Fpage.mi.fu-berlin.de%2Fprechelt%2FBiblio%2Fjccpprt_computer2000.pdf&rfr_id=info:sid/en.wikipedia.org:C%2B%2B"><span style="display: none;"> </span></span></span> </li> <li id="cite_note-steelman-42"><span class="mw-cite-backlink"><a href="#cite_ref-steelman_42-0">↑</a></span> <span class="reference-text"><span class="citation"><a rel="nofollow" class="external text" href="https://dwheeler.com/steelman/steeltab.htm">«Ada, C, C++, and Java vs. The Steelman» David A. Wheeler July/August 1997</a><span class="printonly">. <a rel="nofollow" class="external free" href="https://dwheeler.com/steelman/steeltab.htm">https://dwheeler.com/steelman/steeltab.htm</a></span><span class="reference-accessdate" style="font-size: 75%;">. [перевірено 2019-03-23]</span>.</span><span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.btitle=%C2%ABAda%2C+C%2C+C%2B%2B%2C+and+Java+vs.+The+Steelman%C2%BB+David+A.+Wheeler+July%2FAugust+1997&rft.atitle=&rft_id=https%3A%2F%2Fdwheeler.com%2Fsteelman%2Fsteeltab.htm&rfr_id=info:sid/en.wikipedia.org:C%2B%2B"><span style="display: none;"> </span></span></span> </li> <li id="cite_note-bioinfartcl-43"><span class="mw-cite-backlink"><a href="#cite_ref-bioinfartcl_43-0">↑</a></span> <span class="reference-text"><span class="citation"><a rel="nofollow" class="external text" href="https://bmcbioinformatics.biomedcentral.com/articles/10.1186/1471-2105-9-82">«A comparison of common programming languages used in bioinformatics»</a><span class="printonly">. <a rel="nofollow" class="external free" href="https://bmcbioinformatics.biomedcentral.com/articles/10.1186/1471-2105-9-82">https://bmcbioinformatics.biomedcentral.com/articles/10.1186/1471-2105-9-82</a></span><span class="reference-accessdate" style="font-size: 75%;">. [перевірено 2021-09-02]</span>.</span><span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.btitle=%C2%ABA+comparison+of+common+programming+languages+used+in+bioinformatics%C2%BB&rft.atitle=&rft_id=https%3A%2F%2Fbmcbioinformatics.biomedcentral.com%2Farticles%2F10.1186%2F1471-2105-9-82&rfr_id=info:sid/en.wikipedia.org:C%2B%2B"><span style="display: none;"> </span></span></span> </li> <li id="cite_note-bioinfbench-44"><span class="mw-cite-backlink"><a href="#cite_ref-bioinfbench_44-0">↑</a></span> <span class="reference-text"><span class="citation"><a rel="nofollow" class="external text" href="http://www.bioinformatics.org/benchmark/index.html">Сравнение языков программирования в реализации алгоритмов биоинформатики — описание эксперимента.</a><span class="printonly">. <a rel="nofollow" class="external free" href="http://www.bioinformatics.org/benchmark/index.html">http://www.bioinformatics.org/benchmark/index.html</a></span><span class="reference-accessdate" style="font-size: 75%;">. [перевірено 2021-09-02]</span>.</span><span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.btitle=%D0%A1%D1%80%D0%B0%D0%B2%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5+%D1%8F%D0%B7%D1%8B%D0%BA%D0%BE%D0%B2+%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F+%D0%B2+%D1%80%D0%B5%D0%B0%D0%BB%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D0%B8+%D0%B0%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D0%BE%D0%B2+%D0%B1%D0%B8%D0%BE%D0%B8%D0%BD%D1%84%D0%BE%D1%80%D0%BC%D0%B0%D1%82%D0%B8%D0%BA%D0%B8%C2%A0%E2%80%94+%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5+%D1%8D%D0%BA%D1%81%D0%BF%D0%B5%D1%80%D0%B8%D0%BC%D0%B5%D0%BD%D1%82%D0%B0.&rft.atitle=&rft_id=http%3A%2F%2Fwww.bioinformatics.org%2Fbenchmark%2Findex.html&rfr_id=info:sid/en.wikipedia.org:C%2B%2B"><span style="display: none;"> </span></span></span> </li> <li id="cite_note-haskell2-45"><span class="mw-cite-backlink"><a href="#cite_ref-haskell2_45-0">↑</a></span> <span class="reference-text">An Experiment in Software Prototyping Productivity. Paul Hudak, Mark P. Jones. Yale University, Department of Computer Science, New Haven, CT 06518. July 4, 1994.</span> </li> <li id="cite_note-rogers2-46"><span class="mw-cite-backlink"><a href="#cite_ref-rogers2_46-0">↑</a></span> <span class="reference-text"><span class="citation"><a rel="nofollow" class="external text" href="http://www.adahome.com/articles/9703/ada_vs_cpp.html">Comparison of Ada and C++ Features (en)</a><span class="printonly">. <a rel="nofollow" class="external free" href="http://www.adahome.com/articles/9703/ada_vs_cpp.html">http://www.adahome.com/articles/9703/ada_vs_cpp.html</a></span><span class="reference-accessdate" style="font-size: 75%;">. [перевірено 2019-03-23]</span>.</span><span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.btitle=Comparison+of+Ada+and+C%2B%2B+Features+%28en%29&rft.atitle=&rft_id=http%3A%2F%2Fwww.adahome.com%2Farticles%2F9703%2Fada_vs_cpp.html&rfr_id=info:sid/en.wikipedia.org:C%2B%2B"><span style="display: none;"> </span></span></span> </li> <li id="cite_note-47"><span class="mw-cite-backlink"><a href="#cite_ref-47">↑</a></span> <span class="reference-text"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20070404120024/http://www.adaic.com/whyada/ada-vs-c/cada_art.html">Stephen Zeigler, Comparing Development Costs of C and Ada.</a> <small><a rel="nofollow" class="external text" href="https://web.archive.org/web/20070404120024/http://www.adaic.com/whyada/ada-vs-c/cada_art.html">Архівовано</a> 4 апріля 2007.</small></span> </li> <li id="cite_note-48"><span class="mw-cite-backlink"><a href="#cite_ref-48">↑</a></span> <span class="reference-text"><span class="citation"><a rel="nofollow" class="external text" href="http://www.oracle.com/technetwork/java/intro-141325.html">1.2 Design Goals of the Java™ Programming Language</a>. Oracle. 1999-01-01<span class="printonly">. <a rel="nofollow" class="external free" href="http://www.oracle.com/technetwork/java/intro-141325.html">http://www.oracle.com/technetwork/java/intro-141325.html</a></span><span class="reference-accessdate" style="font-size: 75%;">. [перевірено 2013-01-14]</span>.</span><span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.btitle=1.2+Design+Goals+of+the+Java%E2%84%A2+Programming+Language&rft.atitle=&rft.date=1999-01-01&rft.pub=Oracle&rft_id=http%3A%2F%2Fwww.oracle.com%2Ftechnetwork%2Fjava%2Fintro-141325.html&rfr_id=info:sid/en.wikipedia.org:C%2B%2B"><span style="display: none;"> </span></span></span> </li> <li id="cite_note-perhelt3-49"><span class="mw-cite-backlink"><a href="#cite_ref-perhelt3_49-0">↑</a></span> <span class="reference-text"><span class="citation">Lutz Prechelt (<a href="/w/index.php?title=%D0%A2%D0%B5%D1%85%D0%BD%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B9_%D0%B8%D0%BD%D1%81%D1%82%D0%B8%D1%82%D1%83%D1%82_%D0%9A%D0%B0%D1%80%D0%BB%D1%81%D1%80%D1%83%D1%8D&action=edit&redlink=1" class="new" title="Технологический институт Карлсруэ (такой сторінкы нїт)">Universität Karlsruhe</a>) (2000-03-14). <a rel="nofollow" class="external text" href="http://page.mi.fu-berlin.de/prechelt/Biblio/jccpprt_computer2000.pdf">An empirical comparison of C, C++, Java, Perl, Python, Rexx, and Tcl for a search/string-processing program</a> (pdf)<span class="printonly">. <a rel="nofollow" class="external free" href="http://page.mi.fu-berlin.de/prechelt/Biblio/jccpprt_computer2000.pdf">http://page.mi.fu-berlin.de/prechelt/Biblio/jccpprt_computer2000.pdf</a></span><span class="reference-accessdate" style="font-size: 75%;">. [перевірено 2019-11-20]</span>.</span><span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.btitle=An+empirical+comparison+of+C%2C+C%2B%2B%2C+Java%2C+Perl%2C+Python%2C+Rexx%2C+and+Tcl+for+a+search%2Fstring-processing+program&rft.atitle=&rft.aulast=Lutz+Prechelt+%28%5B%5B%D0%A2%D0%B5%D1%85%D0%BD%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B9+%D0%B8%D0%BD%D1%81%D1%82%D0%B8%D1%82%D1%83%D1%82+%D0%9A%D0%B0%D1%80%D0%BB%D1%81%D1%80%D1%83%D1%8D%7CUniversit%C3%A4t+Karlsruhe%5D%5D%29&rft.au=Lutz+Prechelt+%28%5B%5B%D0%A2%D0%B5%D1%85%D0%BD%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B9+%D0%B8%D0%BD%D1%81%D1%82%D0%B8%D1%82%D1%83%D1%82+%D0%9A%D0%B0%D1%80%D0%BB%D1%81%D1%80%D1%83%D1%8D%7CUniversit%C3%A4t+Karlsruhe%5D%5D%29&rft.date=2000-03-14&rft_id=http%3A%2F%2Fpage.mi.fu-berlin.de%2Fprechelt%2FBiblio%2Fjccpprt_computer2000.pdf&rfr_id=info:sid/en.wikipedia.org:C%2B%2B"><span style="display: none;"> </span></span></span> </li> <li id="cite_note-bioinfartcl4-50"><span class="mw-cite-backlink"><a href="#cite_ref-bioinfartcl4_50-0">↑</a></span> <span class="reference-text"><span class="citation"><a rel="nofollow" class="external text" href="https://bmcbioinformatics.biomedcentral.com/articles/10.1186/1471-2105-9-82">«A comparison of common programming languages used in bioinformatics»</a><span class="printonly">. <a rel="nofollow" class="external free" href="https://bmcbioinformatics.biomedcentral.com/articles/10.1186/1471-2105-9-82">https://bmcbioinformatics.biomedcentral.com/articles/10.1186/1471-2105-9-82</a></span><span class="reference-accessdate" style="font-size: 75%;">. [перевірено 2021-09-02]</span>.</span><span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.btitle=%C2%ABA+comparison+of+common+programming+languages+used+in+bioinformatics%C2%BB&rft.atitle=&rft_id=https%3A%2F%2Fbmcbioinformatics.biomedcentral.com%2Farticles%2F10.1186%2F1471-2105-9-82&rfr_id=info:sid/en.wikipedia.org:C%2B%2B"><span style="display: none;"> </span></span></span> </li> <li id="cite_note-googlesg-51"><span class="mw-cite-backlink"><a href="#cite_ref-googlesg_51-0">↑</a></span> <span class="reference-text"><span class="citation"><a rel="nofollow" class="external text" href="https://google.github.io/styleguide/cppguide.html#Exceptions">Google C++ Style Guide. Exceptions.</a><span class="printonly">. <a rel="nofollow" class="external free" href="https://google.github.io/styleguide/cppguide.html#Exceptions">https://google.github.io/styleguide/cppguide.html#Exceptions</a></span><span class="reference-accessdate" style="font-size: 75%;">. [перевірено 2019-03-31]</span>.</span><span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.btitle=Google+C%2B%2B+Style+Guide.+Exceptions.&rft.atitle=&rft_id=https%3A%2F%2Fgoogle.github.io%2Fstyleguide%2Fcppguide.html%23Exceptions&rfr_id=info:sid/en.wikipedia.org:C%2B%2B"><span style="display: none;"> </span></span></span> </li> <li id="cite_note-52"><span class="mw-cite-backlink"><a href="#cite_ref-52">↑</a></span> <span class="reference-text"><span class="citation"><i>Boehm H.</i>. {{{тітул}}}. <small><a rel="nofollow" class="external text" href="https://web.archive.org/web/20130724030259/http://www.hpl.hp.com/personal/Hans_Boehm/gc/issues.html">Архивировано</a> из первоисточника 24 юлія 2013.</small></span> (ссылка из<span class="citation"><i><a href="/w/index.php?title=%D0%A0%D0%B5%D0%B9%D0%BC%D0%BE%D0%BD%D0%B4,_%D0%AD%D1%80%D0%B8%D0%BA&action=edit&redlink=1" class="new" title="Реймонд, Эрик (такой сторінкы нїт)">Реймонд, Эрик</a>.</i>. {{{тітул}}}. — <a href="/wiki/%D0%A8%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D0%BD%D0%B0:%D0%96%D1%80%D1%96%D0%B4%D0%BB%D0%B0_%D0%BA%D0%BD%D0%B8%D0%B3/5-8459-0791-8" title="Шпеціална:Жрідла книг/5-8459-0791-8">ISBN <span style="white-space: nowrap;">5-8459-0791-8</span></a>.</span>)</span> </li> <li id="cite_note-haskell3-53"><span class="mw-cite-backlink"><a href="#cite_ref-haskell3_53-0">↑</a></span> <span class="reference-text">An Experiment in Software Prototyping Productivity. Paul Hudak, Mark P. Jones. Yale University, Department of Computer Science, New Haven, CT 06518. July 4, 1994.</span> </li> <li id="cite_note-autogenerated1-54"><span class="mw-cite-backlink">↑ <sup><a href="#cite_ref-autogenerated1_54-0">54,0</a></sup> <sup><a href="#cite_ref-autogenerated1_54-1">54,1</a></sup></span> <span class="error mw-ext-cite-error" lang="rue" dir="ltr">Хыбна цітація: Хыба в таґу <code><ref></code>; цітації означеной <code>autogenerated1</code> не є доданый жаден текст</span></li> <li id="cite_note-haskell-55"><span class="mw-cite-backlink"><a href="#cite_ref-haskell_55-0">↑</a></span> <span class="reference-text">An Experiment in Software Prototyping Productivity. Paul Hudak, Mark P. Jones. Yale University, Department of Computer Science, New Haven, CT 06518. July 4, 1994.</span> </li> <li id="cite_note-raytracer-56"><span class="mw-cite-backlink"><a href="#cite_ref-raytracer_56-0">↑</a></span> <span class="reference-text"><b>Ray Tracer Language Comparison</b> (бенчмарк языков программирования — ffconsultancy.com/languages/ray_tracer/)</span> </li> <li id="cite_note-perhelt-57"><span class="mw-cite-backlink"><a href="#cite_ref-perhelt_57-0">↑</a></span> <span class="reference-text"><span class="citation">Lutz Prechelt (<a href="/w/index.php?title=%D0%A2%D0%B5%D1%85%D0%BD%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B9_%D0%B8%D0%BD%D1%81%D1%82%D0%B8%D1%82%D1%83%D1%82_%D0%9A%D0%B0%D1%80%D0%BB%D1%81%D1%80%D1%83%D1%8D&action=edit&redlink=1" class="new" title="Технологический институт Карлсруэ (такой сторінкы нїт)">Universität Karlsruhe</a>) (2000-03-14). <a rel="nofollow" class="external text" href="http://page.mi.fu-berlin.de/prechelt/Biblio/jccpprt_computer2000.pdf">An empirical comparison of C, C++, Java, Perl, Python, Rexx, and Tcl for a search/string-processing program</a> (pdf)<span class="printonly">. <a rel="nofollow" class="external free" href="http://page.mi.fu-berlin.de/prechelt/Biblio/jccpprt_computer2000.pdf">http://page.mi.fu-berlin.de/prechelt/Biblio/jccpprt_computer2000.pdf</a></span><span class="reference-accessdate" style="font-size: 75%;">. [перевірено 2019-11-20]</span>.</span><span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.btitle=An+empirical+comparison+of+C%2C+C%2B%2B%2C+Java%2C+Perl%2C+Python%2C+Rexx%2C+and+Tcl+for+a+search%2Fstring-processing+program&rft.atitle=&rft.aulast=Lutz+Prechelt+%28%5B%5B%D0%A2%D0%B5%D1%85%D0%BD%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B9+%D0%B8%D0%BD%D1%81%D1%82%D0%B8%D1%82%D1%83%D1%82+%D0%9A%D0%B0%D1%80%D0%BB%D1%81%D1%80%D1%83%D1%8D%7CUniversit%C3%A4t+Karlsruhe%5D%5D%29&rft.au=Lutz+Prechelt+%28%5B%5B%D0%A2%D0%B5%D1%85%D0%BD%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B9+%D0%B8%D0%BD%D1%81%D1%82%D0%B8%D1%82%D1%83%D1%82+%D0%9A%D0%B0%D1%80%D0%BB%D1%81%D1%80%D1%83%D1%8D%7CUniversit%C3%A4t+Karlsruhe%5D%5D%29&rft.date=2000-03-14&rft_id=http%3A%2F%2Fpage.mi.fu-berlin.de%2Fprechelt%2FBiblio%2Fjccpprt_computer2000.pdf&rfr_id=info:sid/en.wikipedia.org:C%2B%2B"><span style="display: none;"> </span></span></span> </li> <li id="cite_note-languageorient2-58"><span class="mw-cite-backlink"><a href="#cite_ref-languageorient2_58-0">↑</a></span> <span class="reference-text"><span class="citation"><i>Martin Ward</i>. {{{тітул}}}. <small><a rel="nofollow" class="external text" href="https://web.archive.org/web/20160304020956/http://www.cse.dmu.ac.uk/~mward/martin/papers/middle-out-t.pdf">Архивировано</a> из первоисточника 4 марца 2016.</small></span></span> </li> <li id="cite_note-Hudak_DSL2-59"><span class="mw-cite-backlink"><a href="#cite_ref-Hudak_DSL2_59-0">↑</a></span> <span class="reference-text"><span class="citation"><i>Paul Hudak</i>. {{{тітул}}}.</span></span> </li> <li id="cite_note-alankay2-60"><span class="mw-cite-backlink"><a href="#cite_ref-alankay2_60-0">↑</a></span> <span class="reference-text"><span class="citation"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20130824235515/http://c2.com/cgi/wiki?AlanKaysDefinitionOfObjectOriented">Alan Kay's Definition Of Object Oriented Programming</a>. Архівна копія з <a rel="nofollow" class="external text" href="http://c2.com/cgi/wiki?AlanKaysDefinitionOfObjectOriented">оріґінала</a> зроблена 2013-08-24<span class="printonly">. <a rel="nofollow" class="external free" href="https://web.archive.org/web/20130824235515/http://c2.com/cgi/wiki?AlanKaysDefinitionOfObjectOriented">https://web.archive.org/web/20130824235515/http://c2.com/cgi/wiki?AlanKaysDefinitionOfObjectOriented</a></span><span class="reference-accessdate" style="font-size: 75%;">. [перевірено 2013-08-05]</span>.</span><span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.btitle=Alan+Kay%27s+Definition+Of+Object+Oriented+Programming&rft.atitle=&rft_id=https%3A%2F%2Fweb.archive.org%2Fweb%2F20130824235515%2Fhttp%3A%2F%2Fc2.com%2Fcgi%2Fwiki%3FAlanKaysDefinitionOfObjectOriented&rfr_id=info:sid/en.wikipedia.org:C%2B%2B"><span style="display: none;"> </span></span></span> </li> <li id="cite_note-FOOTNOTEШилдт,_Теория_и_практика_C++1996-61"><span class="mw-cite-backlink"><a href="#cite_ref-FOOTNOTEШилдт,_Теория_и_практика_C++1996_61-0">↑</a></span> <span class="reference-text"><a href="#CITEREFШилдт,_Теория_и_практика_C++1996">Шилдт, Теория и практика C++ 1996</a>.<span class="error harv-error" style="display: inline; font-size:100%"> Pogreška u predlošku sfn: ne postoji izvor s oznakom: CITEREFШилдт,_Теория_и_практика_C++1996 (<a href="/w/index.php?title=%D0%9A%D0%B0%D1%82%D0%B5%D2%91%D0%BE%D1%80%D1%96%D1%8F:Pogre%C5%A1ke_u_predlo%C5%A1cima_za_bilje%C5%A1ke&action=edit&redlink=1" class="new" title="Катеґорія:Pogreške u predlošcima za bilješke (такой сторінкы нїт)">pomoć</a>)</span></span> </li> <li id="cite_note-languageorient3-62"><span class="mw-cite-backlink"><a href="#cite_ref-languageorient3_62-0">↑</a></span> <span class="reference-text"><span class="citation"><i>Martin Ward</i>. {{{тітул}}}. <small><a rel="nofollow" class="external text" href="https://web.archive.org/web/20160304020956/http://www.cse.dmu.ac.uk/~mward/martin/papers/middle-out-t.pdf">Архивировано</a> из первоисточника 4 марца 2016.</small></span></span> </li> <li id="cite_note-Joyner2-63"><span class="mw-cite-backlink"><a href="#cite_ref-Joyner2_63-0">↑</a></span> <span class="reference-text"><span class="citation"><i>Ian Joyner</i>. {{{тітул}}}. <small><a rel="nofollow" class="external text" href="https://web.archive.org/web/20131125045724/http://www.quinn.echidna.id.au/quinn/C++-Critique-3ed.pdf">Архивировано</a> из первоисточника 25 новембра 2013.</small></span></span> </li> <li id="cite_note-Paulson3-64"><span class="mw-cite-backlink"><a href="#cite_ref-Paulson3_64-0">↑</a></span> <span class="reference-text"><span class="citation"><i>Paulson, Lawrence C.</i>. {{{тітул}}}. — <a href="/wiki/%D0%A8%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D0%BD%D0%B0:%D0%96%D1%80%D1%96%D0%B4%D0%BB%D0%B0_%D0%BA%D0%BD%D0%B8%D0%B3/0-521-57050-6_(hardback),_0-521-56543-X_(paperback)" title="Шпеціална:Жрідла книг/0-521-57050-6 (hardback), 0-521-56543-X (paperback)">ISBN <span style="white-space: nowrap;">0-521-57050-6 (hardback), 0-521-56543-X (paperback)</span></a>.</span>, c.271-285</span> </li> <li id="cite_note-autogenerated12-65"><span class="mw-cite-backlink"><a href="#cite_ref-autogenerated12_65-0">↑</a></span> <span class="reference-text"><span class="citation"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20131209133259/http://thread.gmane.org/gmane.comp.version-control.git/57643/focus=57918">Открытая переписка gmane.comp.version-control.git от 06.09.2007</a>. Архівна копія з <a rel="nofollow" class="external text" href="http://thread.gmane.org/gmane.comp.version-control.git/57643/focus=57918">оріґінала</a> зроблена 2013-12-09<span class="printonly">. <a rel="nofollow" class="external free" href="https://web.archive.org/web/20131209133259/http://thread.gmane.org/gmane.comp.version-control.git/57643/focus=57918">https://web.archive.org/web/20131209133259/http://thread.gmane.org/gmane.comp.version-control.git/57643/focus=57918</a></span><span class="reference-accessdate" style="font-size: 75%;">. [перевірено 2013-08-05]</span>.</span><span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.btitle=%D0%9E%D1%82%D0%BA%D1%80%D1%8B%D1%82%D0%B0%D1%8F+%D0%BF%D0%B5%D1%80%D0%B5%D0%BF%D0%B8%D1%81%D0%BA%D0%B0+gmane.comp.version-control.git+%D0%BE%D1%82+06.09.2007&rft.atitle=&rft_id=https%3A%2F%2Fweb.archive.org%2Fweb%2F20131209133259%2Fhttp%3A%2F%2Fthread.gmane.org%2Fgmane.comp.version-control.git%2F57643%2Ffocus%3D57918&rfr_id=info:sid/en.wikipedia.org:C%2B%2B"><span style="display: none;"> </span></span></span> </li> <li id="cite_note-Joyner-66"><span class="mw-cite-backlink"><a href="#cite_ref-Joyner_66-0">↑</a></span> <span class="reference-text"><span class="citation"><i>Ian Joyner</i>. {{{тітул}}}. <small><a rel="nofollow" class="external text" href="https://web.archive.org/web/20131125045724/http://www.quinn.echidna.id.au/quinn/C++-Critique-3ed.pdf">Архивировано</a> из первоисточника 25 новембра 2013.</small></span></span> </li> <li id="cite_note-67"><span class="mw-cite-backlink"><a href="#cite_ref-67">↑</a></span> <span class="reference-text"><span class="citation"><i>Walid Taha</i>. {{{тітул}}}. <small><a rel="nofollow" class="external text" href="https://web.archive.org/web/20131024072658/http://www.cs.rice.edu/~taha/publications/conference/icces08.pdf">Архивировано</a> из первоисточника 24 октобра 2013.</small></span></span> </li> <li id="cite_note-68"><span class="mw-cite-backlink"><a href="#cite_ref-68">↑</a></span> <span class="reference-text"><span class="citation"><i>Lugovsky V.S.</i>. {{{тітул}}}. <small><a rel="nofollow" class="external text" href="https://web.archive.org/web/20160810224158/http://arxiv.org/abs/cs/0409016v1">Архивировано</a> из первоисточника 10 авґуста 2016.</small></span></span> </li> <li id="cite_note-XXtraps64bit2-69"><span class="mw-cite-backlink"><a href="#cite_ref-XXtraps64bit2_69-0">↑</a></span> <span class="reference-text"><span class="citation"><i>Андрей Карпов</i>. {{{тітул}}}. <small><a rel="nofollow" class="external text" href="https://web.archive.org/web/20150402114050/http://rsdn.ru/?article%2Fcpp%2FXXtraps64bit.xml">Архивировано</a> из первоисточника 2 апріля 2015.</small></span></span> </li> <li id="cite_note-autogenerated13-70"><span class="mw-cite-backlink"><a href="#cite_ref-autogenerated13_70-0">↑</a></span> <span class="reference-text"><span class="citation"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20131209133259/http://thread.gmane.org/gmane.comp.version-control.git/57643/focus=57918">Открытая переписка gmane.comp.version-control.git от 06.09.2007</a>. Архівна копія з <a rel="nofollow" class="external text" href="http://thread.gmane.org/gmane.comp.version-control.git/57643/focus=57918">оріґінала</a> зроблена 2013-12-09<span class="printonly">. <a rel="nofollow" class="external free" href="https://web.archive.org/web/20131209133259/http://thread.gmane.org/gmane.comp.version-control.git/57643/focus=57918">https://web.archive.org/web/20131209133259/http://thread.gmane.org/gmane.comp.version-control.git/57643/focus=57918</a></span><span class="reference-accessdate" style="font-size: 75%;">. [перевірено 2013-08-05]</span>.</span><span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.btitle=%D0%9E%D1%82%D0%BA%D1%80%D1%8B%D1%82%D0%B0%D1%8F+%D0%BF%D0%B5%D1%80%D0%B5%D0%BF%D0%B8%D1%81%D0%BA%D0%B0+gmane.comp.version-control.git+%D0%BE%D1%82+06.09.2007&rft.atitle=&rft_id=https%3A%2F%2Fweb.archive.org%2Fweb%2F20131209133259%2Fhttp%3A%2F%2Fthread.gmane.org%2Fgmane.comp.version-control.git%2F57643%2Ffocus%3D57918&rfr_id=info:sid/en.wikipedia.org:C%2B%2B"><span style="display: none;"> </span></span></span> </li> <li id="cite_note-71"><span class="mw-cite-backlink"><a href="#cite_ref-71">↑</a></span> <span class="reference-text"><span class="citation"><i>Don Clugston, CSG Solar Pty Ltd (Перевод: Денис Буличенко)</i>. {{{тітул}}}. <small><a rel="nofollow" class="external text" href="https://web.archive.org/web/20131019045704/http://www.rsdn.ru/?article%2Fcpp%2FFastDelegate%2FFastDelegate.xml">Архивировано</a> из первоисточника 19 октобра 2013.</small></span></span> </li> <li id="cite_note-73"><span class="mw-cite-backlink"><a href="#cite_ref-73">↑</a></span> <span class="reference-text">Страуструп, Программирование: принципы и практика использования C++, 2001</span> </li> <li id="cite_note-74"><span class="mw-cite-backlink"><a href="#cite_ref-74">↑</a></span> <span class="reference-text"><span class="citation"><i>Dave Gottner.</i>. {{{тітул}}}. <small><a rel="nofollow" class="external text" href="https://web.archive.org/web/20080607062859/http://www.ddj.com/cpp/184403053">Архивировано</a> из первоисточника 7 юнія 2008.</small></span></span> </li> <li id="cite_note-75"><span class="mw-cite-backlink"><a href="#cite_ref-75">↑</a></span> <span class="reference-text"><span class="citation">Adrian Stone. (2009-09-22). <a rel="nofollow" class="external text" href="https://web.archive.org/web/20111208031943/http://gameangst.com/?p=246">Minimizing Code Bloat: Redundant Template Instantiation</a>. Game Angst. Архівна копія з <a rel="nofollow" class="external text" href="http://gameangst.com/?p=246">оріґінала</a> зроблена 2011-12-08<span class="printonly">. <a rel="nofollow" class="external free" href="https://web.archive.org/web/20111208031943/http://gameangst.com/?p=246">https://web.archive.org/web/20111208031943/http://gameangst.com/?p=246</a></span><span class="reference-accessdate" style="font-size: 75%;">. [перевірено 2010-01-19]</span>.</span><span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.btitle=Minimizing+Code+Bloat%3A+Redundant+Template+Instantiation&rft.atitle=&rft.aulast=Adrian+Stone.&rft.au=Adrian+Stone.&rft.date=2009-09-22&rft.pub=Game+Angst&rft_id=https%3A%2F%2Fweb.archive.org%2Fweb%2F20111208031943%2Fhttp%3A%2F%2Fgameangst.com%2F%3Fp%3D246&rfr_id=info:sid/en.wikipedia.org:C%2B%2B"><span style="display: none;"> </span></span></span> </li> <li id="cite_note-76"><span class="mw-cite-backlink"><a href="#cite_ref-76">↑</a></span> <span class="reference-text"><span class="citation"><i><a href="/w/index.php?title=%D0%A1%D0%B0%D1%82%D1%82%D0%B5%D1%80,_%D0%93%D0%B5%D1%80%D0%B1&action=edit&redlink=1" class="new" title="Саттер, Герб (такой сторінкы нїт)">Herb Sutter</a>.</i>. {{{тітул}}}. <small><a rel="nofollow" class="external text" href="https://web.archive.org/web/20090115075141/http://www.ddj.com/cpp/184401381">Архивировано</a> из первоисточника 15 януара 2009.</small></span></span> </li> <li id="cite_note-77"><span class="mw-cite-backlink"><a href="#cite_ref-77">↑</a></span> <span class="reference-text"><span class="citation"><i><a href="/w/index.php?title=%D0%A1%D0%B0%D1%82%D1%82%D0%B5%D1%80,_%D0%93%D0%B5%D1%80%D0%B1&action=edit&redlink=1" class="new" title="Саттер, Герб (такой сторінкы нїт)">Herb Sutter</a>.</i>. {{{тітул}}}. <small><a rel="nofollow" class="external text" href="https://web.archive.org/web/20090115075141/http://www.ddj.com/cpp/184401381">Архивировано</a> из первоисточника 15 януара 2009.</small></span></span> </li> <li id="cite_note-79"><span class="mw-cite-backlink"><a href="#cite_ref-79">↑</a></span> <span class="reference-text"><span class="citation"><a href="/w/index.php?title=%D0%9C%D0%B0%D0%B9%D0%B5%D1%80%D1%81,_%D0%A1%D0%BA%D0%BE%D1%82%D1%82&action=edit&redlink=1" class="new" title="Майерс, Скотт (такой сторінкы нїт)">Scott Meyers</a> (2002-05-16). <a rel="nofollow" class="external text" href="https://groups.google.com/group/comp.lang.c++.moderated/browse_thread/thread/2b00649a935997f5/5feec243078c5fd8">Code Bloat due to Templates</a>. <i>comp.lang.c++.moderated</i>. <a href="/w/index.php?title=Usenet&action=edit&redlink=1" class="new" title="Usenet (такой сторінкы нїт)">Usenet</a><span class="printonly">. <a rel="nofollow" class="external free" href="https://groups.google.com/group/comp.lang.c++.moderated/browse_thread/thread/2b00649a935997f5/5feec243078c5fd8">http://groups.google.com/group/comp.lang.c++.moderated/browse_thread/thread/2b00649a935997f5/5feec243078c5fd8</a></span><span class="reference-accessdate" style="font-size: 75%;">. [перевірено 2010-01-19]</span>.</span><span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.btitle=Code+Bloat+due+to+Templates&rft.atitle=comp.lang.c%2B%2B.moderated&rft.aulast=%5B%5B%D0%9C%D0%B0%D0%B9%D0%B5%D1%80%D1%81%2C+%D0%A1%D0%BA%D0%BE%D1%82%D1%82%7CScott+Meyers%5D%5D&rft.au=%5B%5B%D0%9C%D0%B0%D0%B9%D0%B5%D1%80%D1%81%2C+%D0%A1%D0%BA%D0%BE%D1%82%D1%82%7CScott+Meyers%5D%5D&rft.date=2002-05-16&rft.pub=%5B%5BUsenet%5D%5D&rft_id=http%3A%2F%2Fgroups.google.com%2Fgroup%2Fcomp.lang.c%2B%2B.moderated%2Fbrowse_thread%2Fthread%2F2b00649a935997f5%2F5feec243078c5fd8&rfr_id=info:sid/en.wikipedia.org:C%2B%2B"><span style="display: none;"> </span></span></span> </li> <li id="cite_note-raytracer2-80"><span class="mw-cite-backlink"><a href="#cite_ref-raytracer2_80-0">↑</a></span> <span class="reference-text"><b>Ray Tracer Language Comparison</b> (бенчмарк языков программирования — ffconsultancy.com/languages/ray_tracer/)</span> </li> <li id="cite_note-81"><span class="mw-cite-backlink"><a href="#cite_ref-81">↑</a></span> <span class="reference-text"><span class="citation"><i>Zhanyong Wan and Paul Hudak</i>. {{{тітул}}}. <small><a rel="nofollow" class="external text" href="https://web.archive.org/web/20110816234039/http://www.cs.rice.edu/~taha/publications/conference/padl02.pdf">Архивировано</a> из первоисточника 16 авґуста 2011.</small></span></span> </li> <li id="cite_note-82"><span class="mw-cite-backlink"><a href="#cite_ref-82">↑</a></span> <span class="reference-text"><span class="citation"><a rel="nofollow" class="external text" href="https://www.webcitation.org/6IqLu1AP0?url=http://www.cs.rice.edu/~taha/publications/">Walid Taha</a>. Архівна копія з <a rel="nofollow" class="external text" href="http://www.cs.rice.edu/~taha/publications/">оріґінала</a> зроблена 2013-08-13<span class="printonly">. <a rel="nofollow" class="external free" href="https://www.webcitation.org/6IqLu1AP0?url=http://www.cs.rice.edu/~taha/publications/">https://www.webcitation.org/6IqLu1AP0?url=http://www.cs.rice.edu/~taha/publications/</a></span><span class="reference-accessdate" style="font-size: 75%;">. [перевірено 2019-11-20]</span>.</span><span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.btitle=Walid+Taha&rft.atitle=&rft_id=https%3A%2F%2Fwww.webcitation.org%2F6IqLu1AP0%3Furl%3Dhttp%3A%2F%2Fwww.cs.rice.edu%2F%7Etaha%2Fpublications%2F&rfr_id=info:sid/en.wikipedia.org:C%2B%2B"><span style="display: none;"> </span></span></span> </li> <li id="cite_note-83"><span class="mw-cite-backlink"><a href="#cite_ref-83">↑</a></span> <span class="reference-text"><span class="citation"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20130917074849/http://www.it-c.dk/research/mlkit/index.php/Main_Page">MLKit</a>. Архівна копія з <a rel="nofollow" class="external text" href="http://www.it-c.dk/research/mlkit/index.php/Main_Page">оріґінала</a> зроблена 2013-09-17<span class="printonly">. <a rel="nofollow" class="external free" href="https://web.archive.org/web/20130917074849/http://www.it-c.dk/research/mlkit/index.php/Main_Page">https://web.archive.org/web/20130917074849/http://www.it-c.dk/research/mlkit/index.php/Main_Page</a></span><span class="reference-accessdate" style="font-size: 75%;">. [перевірено 2013-07-30]</span>.</span><span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.btitle=MLKit&rft.atitle=&rft_id=https%3A%2F%2Fweb.archive.org%2Fweb%2F20130917074849%2Fhttp%3A%2F%2Fwww.it-c.dk%2Fresearch%2Fmlkit%2Findex.php%2FMain_Page&rfr_id=info:sid/en.wikipedia.org:C%2B%2B"><span style="display: none;"> </span></span></span> </li> <li id="cite_note-84"><span class="mw-cite-backlink"><a href="#cite_ref-84">↑</a></span> <span class="reference-text"><span class="citation"><i>Чистяков Влад aka VladD2</i>. {{{тітул}}}. <small><a rel="nofollow" class="external text" href="https://web.archive.org/web/20131213061243/http://rsdn.ru/?article%2Fphilosophy%2FSyntacticSugar.xml">Архивировано</a> из первоисточника 13 децембра 2013.</small></span></span> </li> <li id="cite_note-designGo2-85"><span class="mw-cite-backlink"><a href="#cite_ref-designGo2_85-0">↑</a></span> <span class="reference-text"><span class="citation"><a rel="nofollow" class="external text" href="https://talks.golang.org/2012/splash.article">Go at Google: Language Design in the Service of Software Engineering</a>. talks.golang.org<span class="printonly">. <a rel="nofollow" class="external free" href="https://talks.golang.org/2012/splash.article">https://talks.golang.org/2012/splash.article</a></span><span class="reference-accessdate" style="font-size: 75%;">. [перевірено 2017-09-19]</span>.</span><span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.btitle=Go+at+Google%3A+Language+Design+in+the+Service+of+Software+Engineering&rft.atitle=&rft.pub=talks.golang.org&rft_id=https%3A%2F%2Ftalks.golang.org%2F2012%2Fsplash.article&rfr_id=info:sid/en.wikipedia.org:C%2B%2B"><span style="display: none;"> </span></span></span> </li> <li id="cite_note-86"><span class="mw-cite-backlink"><a href="#cite_ref-86">↑</a></span> <span class="reference-text"><span class="citation">Catalin Cimpanu (2019-06-17). <a rel="nofollow" class="external text" href="https://www.zdnet.com/article/microsoft-to-explore-using-rust/">Microsoft to explore using Rust</a>. ZDNet<span class="printonly">. <a rel="nofollow" class="external free" href="https://www.zdnet.com/article/microsoft-to-explore-using-rust/">https://www.zdnet.com/article/microsoft-to-explore-using-rust/</a></span><span class="reference-accessdate" style="font-size: 75%;">. [перевірено 2019-09-26]</span>.</span><span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.btitle=Microsoft+to+explore+using+Rust&rft.atitle=&rft.aulast=Catalin+Cimpanu&rft.au=Catalin+Cimpanu&rft.date=2019-06-17&rft.pub=ZDNet&rft_id=https%3A%2F%2Fwww.zdnet.com%2Farticle%2Fmicrosoft-to-explore-using-rust%2F&rfr_id=info:sid/en.wikipedia.org:C%2B%2B"><span style="display: none;"> </span></span></span> </li> </ol></div><p>Думка </p><ol class="references"> <li id="cite_note-78"><span class="mw-cite-backlink"><a href="#cite_ref-78">↑</a></span> <span class="reference-text"><span class="citation">vanDooren (2008-09-24). <a rel="nofollow" class="external text" href="https://web.archive.org/web/20090506053736/http://msmvps.com/blogs/vandooren/archive/2008/09/24/c-keyword-of-the-day-export.aspx">C++ keyword of the day: export</a>. Blogs@MSMVPs. Архівна копія з <a rel="nofollow" class="external text" href="http://msmvps.com/blogs/vandooren/archive/2008/09/24/c-keyword-of-the-day-export.aspx">оріґінала</a> зроблена 2009-05-06<span class="printonly">. <a rel="nofollow" class="external free" href="https://web.archive.org/web/20090506053736/http://msmvps.com/blogs/vandooren/archive/2008/09/24/c-keyword-of-the-day-export.aspx">https://web.archive.org/web/20090506053736/http://msmvps.com/blogs/vandooren/archive/2008/09/24/c-keyword-of-the-day-export.aspx</a></span><span class="reference-accessdate" style="font-size: 75%;">. [перевірено 2010-01-19]</span>. "The export keyword is a bit like the Higgs boson of C++. Theoretically it exists, it is described by the standard, and noone has seen it in the wild. … There is 1 C++ compiler front-end in the world which actually supports it"</span><span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.btitle=C%2B%2B+keyword+of+the+day%3A+export&rft.atitle=&rft.aulast=vanDooren&rft.au=vanDooren&rft.date=2008-09-24&rft.pub=Blogs%40MSMVPs&rft_id=https%3A%2F%2Fweb.archive.org%2Fweb%2F20090506053736%2Fhttp%3A%2F%2Fmsmvps.com%2Fblogs%2Fvandooren%2Farchive%2F2008%2F09%2F24%2Fc-keyword-of-the-day-export.aspx&rfr_id=info:sid/en.wikipedia.org:C%2B%2B"><span style="display: none;"> </span></span></span> </li> </ol> <p><b>Поясниня</b><style data-mw-deduplicate="TemplateStyles:r150375">.mw-parser-output .reflist{font-size:90%;margin-bottom:0.5em;list-style-type:decimal}.mw-parser-output .reflist .references{font-size:100%;margin-bottom:0;list-style-type:inherit}.mw-parser-output .reflist-columns-2{column-width:30em}.mw-parser-output .reflist-columns-3{column-width:25em}.mw-parser-output .reflist-columns{margin-top:0.3em}.mw-parser-output .reflist-columns ol{margin-top:0}.mw-parser-output .reflist-columns li{page-break-inside:avoid;break-inside:avoid-column}.mw-parser-output .reflist-upper-alpha{list-style-type:upper-alpha}.mw-parser-output .reflist-upper-roman{list-style-type:upper-roman}.mw-parser-output .reflist-lower-alpha{list-style-type:lower-alpha}.mw-parser-output .reflist-lower-greek{list-style-type:lower-greek}.mw-parser-output .reflist-lower-roman{list-style-type:lower-roman}</style></p><div class="reflist"> <div class="mw-references-wrap"><ol class="references"> <li id="cite_note-72"><span class="mw-cite-backlink"><a href="#cite_ref-72">↑</a></span> <span class="reference-text">Наприклад, <code>Boost.Lambda</code> позіціонуєся як лямбда-функція, єднако C++ не отілиснює <a href="/w/index.php?title=%D0%9B%D1%8F%D0%BC%D0%B1%D0%B4%D0%B0-%D0%B2%D1%8B%D1%87%D0%B8%D1%81%D0%BB%D0%B8%D0%BD%D1%8F&action=edit&redlink=1" class="new" title="Лямбда-вычислиня (такой сторінкы нїт)">лямбда-вычислиня</a> Чёрча повностю; імітація <a href="/w/index.php?title=%D0%9A%D0%BE%D0%BC%D0%B1%D1%96%D0%BD%D0%B0%D1%82%D0%BE%D1%80%D1%8B&action=edit&redlink=1" class="new" title="Комбінаторы (такой сторінкы нїт)">комбінатору</a> посредством языка шаблону через-чурь тяжка, штобы чекати їх хоснованя на практіці; <a href="/w/index.php?title=%D0%9F%D1%80%D0%BE%D0%B4%D0%BE%D0%BB%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5_(%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5)&action=edit&redlink=1" class="new" title="Продолжение (программирование) (такой сторінкы нїт)">продовжіня</a>, унаслідовані уд Цы, рахувутся неідеоматічными и небезпечными, а їх реалізація посредством языка шаблону нежлива; кроме того, хоснованя <a href="/w/index.php?title=%CE%9B-%D0%BF%D1%83%D0%B4%D1%91%D0%BC&action=edit&redlink=1" class="new" title="Λ-пудём (такой сторінкы нїт)">λ-пудёма</a><sup class="noprint"><a href="https://en.wikipedia.org/wiki/lambda_lifting" class="extiw" title="en:lambda lifting"><span title="lambda lifting — версія статті «λ-пудём» англійською мовою" style="font-style:normal;font-weight:normal;font-size:normal">[en]</span></a></sup> для оптімізації C++ неможливо,— так што фактічно <code>Boost.Lambda</code> — то є просто анонімна функція, а не обєкт лямбда-вычисліня.</span> </li> </ol></div></div> <div class="mw-heading mw-heading2"><h2 id="Литература"><span id=".D0.9B.D0.B8.D1.82.D0.B5.D1.80.D0.B0.D1.82.D1.83.D1.80.D0.B0"></span>Литература</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=64" title="Едітовати секцію: Литература" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=64" title="Редагувати вихідний код розділу: Литература"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li><span class="citation" id="CITEREFСтрауструп1999"><i><a href="/w/index.php?title=%D0%A1%D1%82%D1%80%D0%B0%D1%83%D1%81%D1%82%D1%80%D1%83%D0%BF,_%D0%91%D1%8F%D1%80%D0%B5%D0%BD&action=edit&redlink=1" class="new" title="Страуструп, Бярен (такой сторінкы нїт)">Бярен Страуструп</a>.</i>. Язык программирования C++ = The C++ Programming Language / Тов. із англ — 3-е выданя. —  <a href="/w/index.php?title=%D0%A8%D0%B0%D0%B1%D0%BB%D0%BE%D0%BD%D0%B0:%D0%A1%D0%9F%D0%B1&action=edit&redlink=1" class="new" title="Шаблона:СПб (такой сторінкы нїт)">Шаблона:СПб</a>; <a href="/w/index.php?title=%D0%A8%D0%B0%D0%B1%D0%BB%D0%BE%D0%BD%D0%B0:%D0%9C&action=edit&redlink=1" class="new" title="Шаблона:М (такой сторінкы нїт)">Шаблона:М</a>: <a href="/w/index.php?title=%D0%9D%D0%B5%D0%B2%D1%81%D0%BA%D0%B8%D0%B9_%D0%B4%D0%B8%D0%B0%D0%BB%D0%B5%D0%BA%D1%82&action=edit&redlink=1" class="new" title="Невский диалект (такой сторінкы нїт)">Невский диалект</a> — <a href="/w/index.php?title=%D0%91%D1%96%D0%BD%D0%BE%D0%BC_(%D0%B2%D1%8B%D0%B4%D0%B0%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D1%82%D1%8C%D0%B2%D0%BE)&action=edit&redlink=1" class="new" title="Біном (выдавательстьво) (такой сторінкы нїт)">Біном</a>, 1999. — 991 с. — <a href="/wiki/%D0%A8%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D0%BD%D0%B0:%D0%96%D1%80%D1%96%D0%B4%D0%BB%D0%B0_%D0%BA%D0%BD%D0%B8%D0%B3/5-7940-0031-7_(%D0%9D%D0%B5%D0%B2%D1%81%D0%BA%D0%B8%D0%B9_%D0%B4%D0%B8%D0%B0%D0%BB%D0%B5%D0%BA%D1%82),_ISBN_5-7989-0127-0_(%D0%91%D0%B8%D0%BD%D0%BE%D0%BC),_ISBN_0-201-88954-4_(%D0%B0%D0%BD%D0%B3%D0%BB.)" title="Шпеціална:Жрідла книг/5-7940-0031-7 (Невский диалект), ISBN 5-7989-0127-0 (Бином), ISBN 0-201-88954-4 (англ.)">ISBN <span style="white-space: nowrap;">5-7940-0031-7 (Невский диалект), ISBN 5-7989-0127-0 (Бином), ISBN 0-201-88954-4 (англ.)</span></a>.</span></li> <li><span class="citation"><i><a href="/w/index.php?title=%D0%A1%D1%82%D1%80%D0%B0%D1%83%D1%81%D1%82%D1%80%D1%83%D0%BF,_%D0%91%D1%8F%D1%80%D0%B5%D0%BD&action=edit&redlink=1" class="new" title="Страуструп, Бярен (такой сторінкы нїт)">Бярен Страуструп</a></i>. Язык программирования C++. Специальное издание = The C++ programming language. Special edition —  <span style="border-bottom:1px dotted gray; cursor:default" title="Москва">М</span>.: Бином-Пресс, 2007. — 1104 с. — <a href="/wiki/%D0%A8%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D0%BD%D0%B0:%D0%96%D1%80%D1%96%D0%B4%D0%BB%D0%B0_%D0%BA%D0%BD%D0%B8%D0%B3/5-7989-0223-4" title="Шпеціална:Жрідла книг/5-7989-0223-4">ISBN <span style="white-space: nowrap;">5-7989-0223-4</span></a>.</span></li> <li><span class="citation" id="CITEREFСтрауструп,_Программирование:_принципы_и_практика_использования_C++2011"><i><a href="/w/index.php?title=%D0%A1%D1%82%D1%80%D0%B0%D1%83%D1%81%D1%82%D1%80%D1%83%D0%BF,_%D0%91%D1%8F%D1%80%D0%B5%D0%BD&action=edit&redlink=1" class="new" title="Страуструп, Бярен (такой сторінкы нїт)">Бярен Страуструп</a></i>. Программирование: принципы и практика использования C++, исправленное издание = Programming: Principles and Practice Using C++ —  <span style="border-bottom:1px dotted gray; cursor:default" title="Москва">М</span>.: <a href="/w/index.php?title=%D0%92%D1%96%D0%BB%D1%8C%D1%8F%D0%BC%D1%81_(%D0%B2%D1%8B%D0%B4%D0%B0%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D1%82%D0%B2%D0%BE)&action=edit&redlink=1" class="new" title="Вільямс (выдавательство) (такой сторінкы нїт)">Вільямс</a>, 2011. — С. 1248. — <a href="/wiki/%D0%A8%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D0%BD%D0%B0:%D0%96%D1%80%D1%96%D0%B4%D0%BB%D0%B0_%D0%BA%D0%BD%D0%B8%D0%B3/978-5-8459-1705-8" title="Шпеціална:Жрідла книг/978-5-8459-1705-8">ISBN <span style="white-space: nowrap;">978-5-8459-1705-8</span></a>.</span></li> <li><span class="citation" id="CITEREFСтрауструп,_Дизайн_и_эволюция_C++2007"><i><a href="/w/index.php?title=%D0%A1%D1%82%D1%80%D0%B0%D1%83%D1%81%D1%82%D1%80%D1%83%D0%BF,_%D0%91%D1%8F%D1%80%D0%B5%D0%BD&action=edit&redlink=1" class="new" title="Страуструп, Бярен (такой сторінкы нїт)">Бярен Страуструп</a></i>. Дизайн и эволюция C++ = The Design and Evolution of C++ —  <a href="/w/index.php?title=%D0%A8%D0%B0%D0%B1%D0%BB%D0%BE%D0%BD%D0%B0:%D0%A1%D0%9F%D0%B1.&action=edit&redlink=1" class="new" title="Шаблона:СПб. (такой сторінкы нїт)">Шаблона:СПб.</a>: Пітер, 2007. — 445 с. — <a href="/wiki/%D0%A8%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D0%BD%D0%B0:%D0%96%D1%80%D1%96%D0%B4%D0%BB%D0%B0_%D0%BA%D0%BD%D0%B8%D0%B3/5-469-01217-4" title="Шпеціална:Жрідла книг/5-469-01217-4">ISBN <span style="white-space: nowrap;">5-469-01217-4</span></a>.</span></li> <li><span class="citation"><i><a href="/w/index.php?title=%D0%A1%D1%82%D1%80%D0%B0%D1%83%D1%81%D1%82%D1%80%D1%83%D0%BF,_%D0%91%D1%8F%D1%80%D0%B5%D0%BD&action=edit&redlink=1" class="new" title="Страуструп, Бярен (такой сторінкы нїт)">Бярен Страуструп</a></i>. Язык программирования C++. Краткий курс — 2019. — 320 с. — <a href="/wiki/%D0%A8%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D0%BD%D0%B0:%D0%96%D1%80%D1%96%D0%B4%D0%BB%D0%B0_%D0%BA%D0%BD%D0%B8%D0%B3/978-5-907144-12-5" title="Шпеціална:Жрідла книг/978-5-907144-12-5">ISBN <span style="white-space: nowrap;">978-5-907144-12-5</span></a>.</span></li> <li><span class="citation"><i><a href="/w/index.php?title=%D0%A1%D1%82%D1%80%D0%B0%D1%83%D1%81%D1%82%D1%80%D1%83%D0%BF,_%D0%91%D1%8F%D1%80%D0%B5%D0%BD&action=edit&redlink=1" class="new" title="Страуструп, Бярен (такой сторінкы нїт)">Бярен Страуструп</a></i>. Программирование: принципы и практика с использованием C++ — 2016. — 1328 с. — <a href="/wiki/%D0%A8%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D0%BD%D0%B0:%D0%96%D1%80%D1%96%D0%B4%D0%BB%D0%B0_%D0%BA%D0%BD%D0%B8%D0%B3/978-5-8459-1949-6" title="Шпеціална:Жрідла книг/978-5-8459-1949-6">ISBN <span style="white-space: nowrap;">978-5-8459-1949-6</span></a>.</span></li></ul> <ul><li><span class="citation"><i>Сиддхартха Рао</i>. Освой самостоятельно C++ за 21 день, 7-е издание (C++11) = Sams Teach Yourself C++ in One Hour a Day, 7th Edition —  <a href="/w/index.php?title=%D0%92%D0%B8%D0%BB%D1%8C%D1%8F%D0%BC%D1%81_(%D0%B2%D1%8B%D0%B4%D0%B0%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D1%82%D0%B2%D0%BE)&action=edit&redlink=1" class="new" title="Вильямс (выдавательство) (такой сторінкы нїт)">«Вильямс»</a>, 2013. — 688 с. — <a href="/wiki/%D0%A8%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D0%BD%D0%B0:%D0%96%D1%80%D1%96%D0%B4%D0%BB%D0%B0_%D0%BA%D0%BD%D0%B8%D0%B3/978-5-8459-1825-3" title="Шпеціална:Жрідла книг/978-5-8459-1825-3">ISBN <span style="white-space: nowrap;">978-5-8459-1825-3</span></a>.</span></li> <li><span class="citation"><i>Стефенс Д. Р.</i>. C++. Сборник рецептов —  КУДИЦ-ПРЕСС, 2007. — 624 с. — <a href="/wiki/%D0%A8%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D0%BD%D0%B0:%D0%96%D1%80%D1%96%D0%B4%D0%BB%D0%B0_%D0%BA%D0%BD%D0%B8%D0%B3/5-91136-030-6" title="Шпеціална:Жрідла книг/5-91136-030-6">ISBN <span style="white-space: nowrap;">5-91136-030-6</span></a>.</span></li> <li><span class="citation"><i>Стівен Прата.</i>. Язык программирования C++ (C++11). Лекции и упражнения = C++ Primer Plus, 6th Edition (Developer’s Library) — 6-е изд. —  <a href="/w/index.php?title=%D0%92%D1%96%D0%BB%D1%8C%D1%8F%D0%BC%D1%81_(%D0%B2%D1%8B%D0%B4%D0%B0%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D1%82%D0%B2%D0%BE)&action=edit&redlink=1" class="new" title="Вільямс (выдавательство) (такой сторінкы нїт)">Вільямс</a>, 2012. — 1248 с. — <a href="/wiki/%D0%A8%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D0%BD%D0%B0:%D0%96%D1%80%D1%96%D0%B4%D0%BB%D0%B0_%D0%BA%D0%BD%D0%B8%D0%B3/978-5-8459-1778-2" title="Шпеціална:Жрідла книг/978-5-8459-1778-2">ISBN <span style="white-space: nowrap;">978-5-8459-1778-2</span></a>.</span></li> <li><span class="citation"><i>Стивен Прата.</i>. Язык программирования С. Лекции и упражнения —  <a href="/w/index.php?title=%D0%92%D1%96%D0%BB%D1%8C%D1%8F%D0%BC%D1%81_(%D0%B2%D1%8B%D0%B4%D0%B0%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D1%82%D0%B2%D0%BE)&action=edit&redlink=1" class="new" title="Вільямс (выдавательство) (такой сторінкы нїт)">Вільямс</a>, 2015. — 928 с. — <a href="/wiki/%D0%A8%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D0%BD%D0%B0:%D0%96%D1%80%D1%96%D0%B4%D0%BB%D0%B0_%D0%BA%D0%BD%D0%B8%D0%B3/978-5-8459-1950-2" title="Шпеціална:Жрідла книг/978-5-8459-1950-2">ISBN <span style="white-space: nowrap;">978-5-8459-1950-2</span></a>.</span></li> <li><span class="citation"><i>Айвор Гортон.</i>. Visual C++ 2010: полный курс = Ivor Horton’s Beginning Visual C++ 2010 —  <span style="border-bottom:1px dotted gray; cursor:default" title="Москва">М</span>.: <a href="/w/index.php?title=%D0%94%D1%96%D0%B0%D0%BB%D0%B5%D0%BA%D1%82%D1%96%D0%BA%D0%B0_(%D0%B2%D1%8B%D0%B4%D0%B0%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D1%82%D0%B2%D0%BE)&action=edit&redlink=1" class="new" title="Діалектіка (выдавательство) (такой сторінкы нїт)">Діалектіка</a>, 2010. — С. 1216. — <a href="/wiki/%D0%A8%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D0%BD%D0%B0:%D0%96%D1%80%D1%96%D0%B4%D0%BB%D0%B0_%D0%BA%D0%BD%D0%B8%D0%B3/978-5-8459-1698-3" title="Шпеціална:Жрідла книг/978-5-8459-1698-3">ISBN <span style="white-space: nowrap;">978-5-8459-1698-3</span></a>.</span>из</li> <li><span class="citation" id="CITEREFШилдт2011"><i><a href="/w/index.php?title=%D0%A8%D0%B8%D0%BB%D0%B4%D1%82,_%D0%93%D0%B5%D1%80%D0%B1%D0%B5%D1%80%D1%82&action=edit&redlink=1" class="new" title="Шилдт, Герберт (такой сторінкы нїт)">Герберт Шилдт</a>.</i>. Полный справочник по C++ = C++: The Complete Reference — 4-е выданя. —  <a href="/w/index.php?title=%D0%92%D1%96%D0%BB%D1%8C%D1%8F%D0%BC%D1%81_(%D0%B2%D1%8B%D0%B4%D0%B0%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D1%82%D0%B2%D0%BE)&action=edit&redlink=1" class="new" title="Вільямс (выдавательство) (такой сторінкы нїт)">Виліямс</a>, 2011. — С. 800. — <a href="/wiki/%D0%A8%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D0%BD%D0%B0:%D0%96%D1%80%D1%96%D0%B4%D0%BB%D0%B0_%D0%BA%D0%BD%D0%B8%D0%B3/978-5-8459-0489-8" title="Шпеціална:Жрідла книг/978-5-8459-0489-8">ISBN <span style="white-space: nowrap;">978-5-8459-0489-8</span></a>.</span></li> <li><span class="citation" id="CITEREFШилдт,_Теория_и_практика_C++1996"><i><a href="/w/index.php?title=%D0%A8%D0%B8%D0%BB%D0%B4%D1%82,_%D0%93%D0%B5%D1%80%D0%B1%D0%B5%D1%80%D1%82&action=edit&redlink=1" class="new" title="Шилдт, Герберт (такой сторінкы нїт)">Герберт Шилдт</a></i>. Теория и практика C++ = Shildt's Expert C++ —  BHV — Санкт-Петербург, 1996. — <a href="/wiki/%D0%A8%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D0%BD%D0%B0:%D0%96%D1%80%D1%96%D0%B4%D0%BB%D0%B0_%D0%BA%D0%BD%D0%B8%D0%B3/0-07-882209-2,_5-7791-0029-2" title="Шпеціална:Жрідла книг/0-07-882209-2, 5-7791-0029-2">ISBN <span style="white-space: nowrap;">0-07-882209-2, 5-7791-0029-2</span></a>.</span></li> <li><span class="citation" id="CITEREFPlaugerОктобер,_1993"><i>P.J. Plauger.</i>. Programming Language Guessing Games - If C++ is the Answer, what’s the question? // <i><a href="/w/index.php?title=Dr._Dobb%27s_Journal&action=edit&redlink=1" class="new" title="Dr. Dobb's Journal (такой сторінкы нїт)">Dr. Dobb's Journal</a></i>. — Октобер, 1993.</span></li> <li><span class="citation" id="CITEREFUnix-Haters1994"><a rel="nofollow" class="external text" href="http://web.mit.edu/~simsong/www/ugh.pdf">The Unix-Haters Handbook</a> —  <a href="/w/index.php?title=International_Data_Group&action=edit&redlink=1" class="new" title="International Data Group (такой сторінкы нїт)">International Data Group</a>, 1994.</span></li> <li><span class="citation" id="CITEREFJoyner1996"><i>Ian Joyner.</i>. <a rel="nofollow" class="external text" href="http://www.quinn.echidna.id.au/quinn/C++-Critique-3ed.pdf">A Critique of C++ and Programming and Language Trends of the 1990s - 3rd Edition</a> // <i><a rel="nofollow" class="external text" href="http://www.emu.edu.tr/aelci/Courses/D-318/D-318-Files/cppcrit/index008.htm">копирайт и список изданий</a></i>. — 1996.</span></li> <li><span class="citation"><i>Скотт Мейерс</i>. Эффективный и современный C++: 42 рекомендации по использованию C++11 и C++14 = Effective Modern C++: 42 Specific Ways to Improve Your Use of C++11 and C++14 / Пер. с англ —  Вильямс, 2016. — 304 с. — <a href="/wiki/%D0%A8%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D0%BD%D0%B0:%D0%96%D1%80%D1%96%D0%B4%D0%BB%D0%B0_%D0%BA%D0%BD%D0%B8%D0%B3/978-5-8459-2000-3" title="Шпеціална:Жрідла книг/978-5-8459-2000-3">ISBN <span style="white-space: nowrap;">978-5-8459-2000-3</span></a>.</span></li> <li><span class="citation" id="CITEREFШилдт1998"><i><a href="/w/index.php?title=%D0%A8%D0%B8%D0%BB%D0%B4%D1%82,_%D0%93%D0%B5%D1%80%D0%B1%D0%B5%D1%80%D1%82&action=edit&redlink=1" class="new" title="Шилдт, Герберт (такой сторінкы нїт)">Herbert Schildt</a>.</i>. <a rel="nofollow" class="external text" href="https://archive.org/details/ccompletereferen00schi_1">C++ The Complete Reference Third Edition</a> —  Osborne McGraw-Hill, 1998. — <a href="/wiki/%D0%A8%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D0%BD%D0%B0:%D0%96%D1%80%D1%96%D0%B4%D0%BB%D0%B0_%D0%BA%D0%BD%D0%B8%D0%B3/978-0-07-882476-0" title="Шпеціална:Жрідла книг/978-0-07-882476-0">ISBN <span style="white-space: nowrap;">978-0-07-882476-0</span></a>.</span></li> <li><a rel="nofollow" class="external text" href="https://rooksguide.org">Jeremy A. Hansen. The Rook’s Guide to C++ (A Creative Commons-Licensed Textbook)</a>.</li></ul> <div class="mw-heading mw-heading2"><h2 id="Удкликаня"><span id=".D0.A3.D0.B4.D0.BA.D0.BB.D0.B8.D0.BA.D0.B0.D0.BD.D1.8F"></span>Удкликаня</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C%2B%2B&veaction=edit&section=65" title="Едітовати секцію: Удкликаня" class="mw-editsection-visualeditor"><span>едітовати</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=C%2B%2B&action=edit&section=65" title="Редагувати вихідний код розділу: Удкликаня"><span>едітовати жрідло</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li>isocpp.org (англ.) — офіційный сайт C++ <ul><li><a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2009/">рабочие материалы комитета по стандартизации за 2009-й год</a></li></ul></li> <li>Бярен Страуструп. <a rel="nofollow" class="external text" href="https://github.com/isocpp/">CppCoreGuidelines</a><span class="ref-info" title="в англицком языку" style="font-size:85%; cursor:help; margin-left:0.2em; color:#888;">англ.</span> The C++ Core Guidelines are a set of tried-and-true guidelines, rules, and best practices about coding in C++</li> <li>Бярен Страуструп. <a rel="nofollow" class="external text" href="http://www.artima.com/cppsource/cpp0x.html">Краткий обзор C++0x</a><span class="ref-info" title="в англицком языку" style="font-size:85%; cursor:help; margin-left:0.2em; color:#888;">англ.</span></li> <li><a rel="nofollow" class="external text" href="https://groups.google.com/group/comp.lang.c++.moderated/topics">comp.lang.c++.moderated</a><span class="ref-info" title="в англицком языку" style="font-size:85%; cursor:help; margin-left:0.2em; color:#888;">англ.</span></li> <li><span class="citation" id="C++_FQA">Yossi Kreinin.. <a rel="nofollow" class="external text" href="http://yosefk.com/c++fqa/index.html">C++ FQA Lite</a><span class="printonly">. <a rel="nofollow" class="external free" href="http://yosefk.com/c++fqa/index.html">http://yosefk.com/c++fqa/index.html</a></span>.</span><span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.btitle=C%2B%2B+FQA+Lite&rft.atitle=&rft.aulast=Yossi+Kreinin.&rft.au=Yossi+Kreinin.&rft_id=http%3A%2F%2Fyosefk.com%2Fc%2B%2Bfqa%2Findex.html&rfr_id=info:sid/en.wikipedia.org:C%2B%2B"><span style="display: none;"> </span></span></li> <li><span class="citation" id="Torvalds_-_Convert_builin-mailinfo.c"><a href="/w/index.php?title=%D0%A2%D0%BE%D1%80%D0%B2%D0%B0%D0%BB%D1%8C%D0%B4%D1%81,_%D0%9B%D0%B8%D0%BD%D1%83%D1%81&action=edit&redlink=1" class="new" title="Торвальдс, Линус (такой сторінкы нїт)">Линус Торвальдс</a>. (2007-09-06). <a rel="nofollow" class="external text" href="https://web.archive.org/web/20131209133259/http://thread.gmane.org/gmane.comp.version-control.git/57643/focus=57918">Convert builin-mailinfo.c to use The Better String Library</a>. <a rel="nofollow" class="external text" href="http://thread.gmane.org">Gmane forum</a>. Архівна копія з <a rel="nofollow" class="external text" href="http://thread.gmane.org/gmane.comp.version-control.git/57643/focus=57918">оріґінала</a> зроблена 2013-12-09<span class="printonly">. <a rel="nofollow" class="external free" href="https://web.archive.org/web/20131209133259/http://thread.gmane.org/gmane.comp.version-control.git/57643/focus=57918">https://web.archive.org/web/20131209133259/http://thread.gmane.org/gmane.comp.version-control.git/57643/focus=57918</a></span>.</span><span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.btitle=Convert+builin-mailinfo.c+to+use+The+Better+String+Library&rft.atitle=&rft.aulast=%5B%5B%D0%A2%D0%BE%D1%80%D0%B2%D0%B0%D0%BB%D1%8C%D0%B4%D1%81%2C+%D0%9B%D0%B8%D0%BD%D1%83%D1%81%7C%D0%9B%D0%B8%D0%BD%D1%83%D1%81+%D0%A2%D0%BE%D1%80%D0%B2%D0%B0%D0%BB%D1%8C%D0%B4%D1%81%5D%5D.&rft.au=%5B%5B%D0%A2%D0%BE%D1%80%D0%B2%D0%B0%D0%BB%D1%8C%D0%B4%D1%81%2C+%D0%9B%D0%B8%D0%BD%D1%83%D1%81%7C%D0%9B%D0%B8%D0%BD%D1%83%D1%81+%D0%A2%D0%BE%D1%80%D0%B2%D0%B0%D0%BB%D1%8C%D0%B4%D1%81%5D%5D.&rft.date=2007-09-06&rft.pub=%5Bhttp%3A%2F%2Fthread.gmane.org+Gmane+forum%5D&rft_id=https%3A%2F%2Fweb.archive.org%2Fweb%2F20131209133259%2Fhttp%3A%2F%2Fthread.gmane.org%2Fgmane.comp.version-control.git%2F57643%2Ffocus%3D57918&rfr_id=info:sid/en.wikipedia.org:C%2B%2B"><span style="display: none;"> </span></span></li></ul> <!-- NewPP limit report Parsed by mw‐web.codfw.main‐64b5bb4b79‐fgmg6 Cached time: 20250301235345 Cache expiry: 2592000 Reduced expiry: false Complications: [vary‐revision‐sha1, show‐toc] CPU time usage: 0.947 seconds Real time usage: 1.038 seconds Preprocessor visited node count: 52696/1000000 Post‐expand include size: 278660/2097152 bytes Template argument size: 402607/2097152 bytes Highest expansion depth: 30/100 Expensive parser function count: 17/500 Unstrip recursion depth: 0/20 Unstrip post‐expand size: 120698/5000000 bytes Lua time usage: 0.047/10.000 seconds Lua memory usage: 2936448/52428800 bytes Number of Wikibase entities loaded: 1/400 --> <!-- Transclusion expansion time report (%,ms,calls,template) 100.00% 720.201 1 -total 35.30% 254.245 18 Шаблона:Книга 30.89% 222.462 17 Шаблона:Str_right 30.52% 219.796 17 Шаблона:Str_sub_long 18.57% 133.714 37 Шаблона:Cite_web 18.34% 132.115 38 Шаблона:Citation/core 12.31% 88.654 1 Шаблона:Інфобокс_языка_проґрамованя 11.71% 84.365 1 Шаблона:Інфобокс 10.27% 73.931 17 Шаблона:Str_index_any 9.63% 69.369 17 Шаблона:Str_≥_len --> <!-- Saved in parser cache with key ruewiki:pcache:22777:|#|:idhash:canonical and timestamp 20250301235345 and revision id 154497. Rendering was triggered because: page-view --> </div><!--esi <esi:include src="/esitest-fa8a495983347898/content" /> --><noscript><img src="https://login.wikimedia.org/wiki/Special:CentralAutoLogin/start?useformat=desktop&type=1x1&usesul3=0" alt="" width="1" height="1" style="border: none; position: absolute;"></noscript> <div class="printfooter" data-nosnippet="">Обтримане з "<a dir="ltr" href="https://rue.wikipedia.org/w/index.php?title=C%2B%2B&oldid=154497">https://rue.wikipedia.org/w/index.php?title=C%2B%2B&oldid=154497</a>"</div></div> <div id="catlinks" class="catlinks" data-mw="interface"><div id="mw-normal-catlinks" class="mw-normal-catlinks"><a href="/wiki/%D0%A8%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D0%BD%D0%B0:%D0%9A%D0%B0%D1%82%D0%B5%D2%91%D0%BE%D1%80%D1%96%D1%97" title="Шпеціална:Катеґорії">Катеґорії</a>: <ul><li><a href="/w/index.php?title=%D0%9A%D0%B0%D1%82%D0%B5%D2%91%D0%BE%D1%80%D1%96%D1%8F:%D0%A1%D1%82%D0%BE%D1%80%D1%96%D0%BD%D0%BA%D0%B8,_%D1%8F%D0%BA%D1%96_%D0%B2%D0%B8%D0%BA%D0%BE%D1%80%D0%B8%D1%81%D1%82%D0%BE%D0%B2%D1%83%D1%8E%D1%82%D1%8C_%D0%B7%D0%B0%D1%81%D1%82%D0%B0%D1%80%D1%96%D0%BB%D1%96_%D1%82%D0%B5%D0%B3%D0%B8_%C2%ABsource%C2%BB&action=edit&redlink=1" class="new" title="Катеґорія:Сторінки, які використовують застарілі теги «source» (такой сторінкы нїт)">Сторінки, які використовують застарілі теги «source»</a></li><li><a href="/w/index.php?title=%D0%9A%D0%B0%D1%82%D0%B5%D2%91%D0%BE%D1%80%D1%96%D1%8F:%D0%A1%D1%82%D0%BE%D1%80%D1%96%D0%BD%D0%BA%D0%B8_%D0%B7_%D0%BF%D0%BE%D0%BC%D0%B8%D0%BB%D0%BA%D0%B0%D0%BC%D0%B8_%D0%BF%D0%BE%D1%81%D0%B8%D0%BB%D0%B0%D0%BD%D1%8C&action=edit&redlink=1" class="new" title="Катеґорія:Сторінки з помилками посилань (такой сторінкы нїт)">Сторінки з помилками посилань</a></li><li><a href="/w/index.php?title=%D0%9A%D0%B0%D1%82%D0%B5%D2%91%D0%BE%D1%80%D1%96%D1%8F:Pogre%C5%A1ke_u_bilje%C5%A1kama_-_nema_odredi%C5%A1ta&action=edit&redlink=1" class="new" title="Катеґорія:Pogreške u bilješkama - nema odredišta (такой сторінкы нїт)">Pogreške u bilješkama - nema odredišta</a></li><li><a href="/w/index.php?title=%D0%9A%D0%B0%D1%82%D0%B5%D2%91%D0%BE%D1%80%D1%96%D1%8F:%D0%A1%2B%2B&action=edit&redlink=1" class="new" title="Катеґорія:С++ (такой сторінкы нїт)">С++</a></li><li><a href="/wiki/%D0%9A%D0%B0%D1%82%D0%B5%D2%91%D0%BE%D1%80%D1%96%D1%8F:%D0%AF%D0%B7%D1%8B%D0%BA%D1%8B_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F" title="Катеґорія:Языкы проґрамованя">Языкы проґрамованя</a></li><li><a href="/wiki/%D0%9A%D0%B0%D1%82%D0%B5%D2%91%D0%BE%D1%80%D1%96%D1%8F:%D0%A1%D1%82%D0%B0%D1%82%D1%8F_%D0%BD%D0%B0%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B0_%D0%BC%D0%B0%D1%80%D0%B0%D0%BC%D0%BE%D1%80%D0%BE%D1%88%D1%81%D1%8C%D0%BA%D1%8B%D0%BC_%D2%91%D0%B2%D0%B0%D1%80%D0%BE%D0%BC" title="Катеґорія:Статя написана мараморошськым ґваром">Статя написана мараморошськым ґваром</a></li><li><a href="/w/index.php?title=%D0%9A%D0%B0%D1%82%D0%B5%D2%91%D0%BE%D1%80%D1%96%D1%8F:%D0%A6%D1%8B_%D1%81%D0%B0%D0%BC%D0%B0%D1%80%D0%B0%D0%B2%D1%83%D1%87%D1%96_%D1%8F%D0%B7%D1%8B%D0%BA%D1%8B_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F&action=edit&redlink=1" class="new" title="Катеґорія:Цы самаравучі языкы проґрамованя (такой сторінкы нїт)">Цы самаравучі языкы проґрамованя</a></li><li><a href="/w/index.php?title=%D0%9A%D0%B0%D1%82%D0%B5%D2%91%D0%BE%D1%80%D1%96%D1%8F:%D0%92%D1%8B%D1%81%D0%BE%D0%BA%D0%BE%D1%80%D1%83%D0%BD%D1%91%D0%B2%D1%96_%D1%8F%D0%B7%D1%8B%D0%BA%D1%8B_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F&action=edit&redlink=1" class="new" title="Катеґорія:Высокорунёві языкы проґрамованя (такой сторінкы нїт)">Высокорунёві языкы проґрамованя</a></li><li><a href="/w/index.php?title=%D0%9A%D0%B0%D1%82%D0%B5%D2%91%D0%BE%D1%80%D1%96%D1%8F:%D0%AF%D0%B7%D1%8B%D0%BA%D1%8B_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F_%D1%96%D0%B7_%D0%BE%D1%81%D0%BE%D0%B1%D0%BD%D1%8B%D0%BC_%D0%BA%D1%80%D0%BE%D0%BC%D0%B0%D0%BD%D1%91%D0%B2%D0%B0%D0%BD%D1%91%D0%BC_%D1%82%D1%8F%D0%BC%D0%BE%D0%B2&action=edit&redlink=1" class="new" title="Катеґорія:Языкы проґрамованя із особным кроманёванём тямов (такой сторінкы нїт)">Языкы проґрамованя із особным кроманёванём тямов</a></li></ul></div><div id="mw-hidden-catlinks" class="mw-hidden-catlinks mw-hidden-cats-hidden">Скрыты катеґорії: <ul><li><a href="/wiki/%D0%9A%D0%B0%D1%82%D0%B5%D2%91%D0%BE%D1%80%D1%96%D1%8F:%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C:%D0%9D%D0%B5_%D0%BF%D0%B5%D1%80%D0%B5%D0%BA%D0%BB%D0%B0%D0%B4%D0%B5%D0%BD%D0%BE:%D0%94%D0%BE_%D0%BF%D0%B5%D1%80%D0%B5%D0%BA%D0%BB%D0%B0%D0%B4%D1%83" title="Катеґорія:Модуль:Не перекладено:До перекладу">Модуль:Не перекладено:До перекладу</a></li><li><a href="/wiki/%D0%9A%D0%B0%D1%82%D0%B5%D2%91%D0%BE%D1%80%D1%96%D1%8F:%D0%A1%D1%82%D0%B0%D1%82%D1%97_%D0%BE%D0%B1%D1%81%D1%8F%D0%B3%D1%83%D1%8E%D1%87%D1%96_%D0%B0%D0%BD%D2%91%D0%BB%D1%96%D1%86%D1%8C%D0%BA%D1%8B%D0%B9_%D1%8F%D0%B7%D1%8B%D0%BA%D0%BE%D0%B2%D1%8B%D0%B9_%D1%82%D0%B5%D0%BA%D1%81%D1%82" title="Катеґорія:Статї обсягуючі анґліцькый языковый текст">Статї обсягуючі анґліцькый языковый текст</a></li></ul></div></div> </div> </main> </div> <div class="mw-footer-container"> <footer id="footer" class="mw-footer" > <ul id="footer-info"> <li id="footer-info-lastmod"> Послїдня зміна той сторінкы: 21:10, 27 фебруара 2025.</li> <li id="footer-info-copyright">Текст доступний на умовах ліцензії <a rel="nofollow" class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/">Creative Commons Attribution-ShareAlike</a>; також можуть діяти додаткові умови. Детальніше див. <a class="external text" href="https://foundation.wikimedia.org/wiki/Умови_використання">Умови використання</a>.</li> </ul> <ul id="footer-places"> <li id="footer-places-privacy"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Privacy_policy/ru">Політіка сокочіня пріватных даных</a></li> <li id="footer-places-about"><a href="/wiki/%D0%92%D1%96%D0%BA%D1%96%D0%BF%D0%B5%D0%B4%D1%96%D1%8F:%D0%92%D1%96%D0%BA%D1%96%D0%BF%D0%B5%D0%B4%D1%96%D1%8F">О Вікіпедія</a></li> <li id="footer-places-disclaimers"><a href="/wiki/%D0%92%D1%96%D0%BA%D1%96%D0%BF%D0%B5%D0%B4%D1%96%D1%8F:%D0%9E%D0%B4%D0%BA%D0%B0%D0%B7_%D0%BE%D0%B4_%D0%BE%D0%B4%D0%BF%D0%BE%D0%B2%D1%96%D0%B4%D0%BD%D0%BE%D1%81%D1%82%D0%B8">Вылучіня одповідности</a></li> <li id="footer-places-wm-codeofconduct"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Universal_Code_of_Conduct">Кодекс поведінки</a></li> <li id="footer-places-developers"><a href="https://developer.wikimedia.org">Розробники</a></li> <li id="footer-places-statslink"><a href="https://stats.wikimedia.org/#/rue.wikipedia.org">Статістика</a></li> <li id="footer-places-cookiestatement"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Cookie_statement">Кукі</a></li> <li id="footer-places-mobileview"><a href="//rue.m.wikipedia.org/w/index.php?title=C%2B%2B&mobileaction=toggle_view_mobile" class="noprint stopMobileRedirectToggle">Мобілна верзія</a></li> </ul> <ul id="footer-icons" class="noprint"> <li id="footer-copyrightico"><a href="https://wikimediafoundation.org/" class="cdx-button cdx-button--fake-button cdx-button--size-large cdx-button--fake-button--enabled"><picture><source media="(min-width: 500px)" srcset="/static/images/footer/wikimedia-button.svg" width="84" height="29"><img src="/static/images/footer/wikimedia.svg" width="25" height="25" alt="Wikimedia Foundation" lang="en" loading="lazy"></picture></a></li> <li id="footer-poweredbyico"><a href="https://www.mediawiki.org/" class="cdx-button cdx-button--fake-button cdx-button--size-large cdx-button--fake-button--enabled"><picture><source media="(min-width: 500px)" srcset="/w/resources/assets/poweredby_mediawiki.svg" width="88" height="31"><img src="/w/resources/assets/mediawiki_compact.svg" alt="Powered by MediaWiki" lang="en" width="25" height="25" loading="lazy"></picture></a></li> </ul> </footer> </div> </div> </div> <div class="vector-header-container vector-sticky-header-container"> <div id="vector-sticky-header" class="vector-sticky-header"> <div class="vector-sticky-header-start"> <div class="vector-sticky-header-icon-start vector-button-flush-left vector-button-flush-right" aria-hidden="true"> <button class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-sticky-header-search-toggle" tabindex="-1" data-event-name="ui.vector-sticky-search-form.icon"><span class="vector-icon mw-ui-icon-search mw-ui-icon-wikimedia-search"></span> <span>Глядати</span> </button> </div> <div role="search" class="vector-search-box-vue vector-search-box-show-thumbnail vector-search-box"> <div class="vector-typeahead-search-container"> <div class="cdx-typeahead-search cdx-typeahead-search--show-thumbnail"> <form action="/w/index.php" id="vector-sticky-search-form" class="cdx-search-input cdx-search-input--has-end-button"> <div class="cdx-search-input__input-wrapper" data-search-loc="header-moved"> <div class="cdx-text-input cdx-text-input--has-start-icon"> <input class="cdx-text-input__input" type="search" name="search" placeholder="Глядати Вікіпедія"> <span class="cdx-text-input__icon cdx-text-input__start-icon"></span> </div> <input type="hidden" name="title" value="Шпеціална:Гляданя"> </div> <button class="cdx-button cdx-search-input__end-button">Найти</button> </form> </div> </div> </div> <div class="vector-sticky-header-context-bar"> <nav aria-label="Зміст" class="vector-toc-landmark"> <div id="vector-sticky-header-toc" class="vector-dropdown mw-portlet mw-portlet-sticky-header-toc vector-sticky-header-toc vector-button-flush-left" > <input type="checkbox" id="vector-sticky-header-toc-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-sticky-header-toc" class="vector-dropdown-checkbox " aria-label="Указати/спрятати содержай" > <label id="vector-sticky-header-toc-label" for="vector-sticky-header-toc-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-listBullet mw-ui-icon-wikimedia-listBullet"></span> <span class="vector-dropdown-label-text">Указати/спрятати содержай</span> </label> <div class="vector-dropdown-content"> <div id="vector-sticky-header-toc-unpinned-container" class="vector-unpinned-container"> </div> </div> </div> </nav> <div class="vector-sticky-header-context-bar-primary" aria-hidden="true" ><span class="mw-page-title-main">C++</span></div> </div> </div> <div class="vector-sticky-header-end" aria-hidden="true"> <div class="vector-sticky-header-icons"> <a href="#" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only" id="ca-talk-sticky-header" tabindex="-1" data-event-name="talk-sticky-header"><span class="vector-icon mw-ui-icon-speechBubbles mw-ui-icon-wikimedia-speechBubbles"></span> <span></span> </a> <a href="#" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only" id="ca-subject-sticky-header" tabindex="-1" data-event-name="subject-sticky-header"><span class="vector-icon mw-ui-icon-article mw-ui-icon-wikimedia-article"></span> <span></span> </a> <a href="#" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only" id="ca-history-sticky-header" tabindex="-1" data-event-name="history-sticky-header"><span class="vector-icon mw-ui-icon-wikimedia-history mw-ui-icon-wikimedia-wikimedia-history"></span> <span></span> </a> <a href="#" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only mw-watchlink" id="ca-watchstar-sticky-header" tabindex="-1" data-event-name="watch-sticky-header"><span class="vector-icon mw-ui-icon-wikimedia-star mw-ui-icon-wikimedia-wikimedia-star"></span> <span></span> </a> <a href="#" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only" id="ca-ve-edit-sticky-header" tabindex="-1" data-event-name="ve-edit-sticky-header"><span class="vector-icon mw-ui-icon-wikimedia-edit mw-ui-icon-wikimedia-wikimedia-edit"></span> <span></span> </a> <a href="#" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only" id="ca-edit-sticky-header" tabindex="-1" data-event-name="wikitext-edit-sticky-header"><span class="vector-icon mw-ui-icon-wikimedia-wikiText mw-ui-icon-wikimedia-wikimedia-wikiText"></span> <span></span> </a> <a href="#" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only" id="ca-viewsource-sticky-header" tabindex="-1" data-event-name="ve-edit-protected-sticky-header"><span class="vector-icon mw-ui-icon-wikimedia-editLock mw-ui-icon-wikimedia-wikimedia-editLock"></span> <span></span> </a> </div> <div class="vector-sticky-header-buttons"> <button class="cdx-button cdx-button--weight-quiet mw-interlanguage-selector" id="p-lang-btn-sticky-header" tabindex="-1" data-event-name="ui.dropdown-p-lang-btn-sticky-header"><span class="vector-icon mw-ui-icon-wikimedia-language mw-ui-icon-wikimedia-wikimedia-language"></span> <span>110 мов</span> </button> <a href="#" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--action-progressive" id="ca-addsection-sticky-header" tabindex="-1" data-event-name="addsection-sticky-header"><span class="vector-icon mw-ui-icon-speechBubbleAdd-progressive mw-ui-icon-wikimedia-speechBubbleAdd-progressive"></span> <span>Придати тему</span> </a> </div> <div class="vector-sticky-header-icon-end"> <div class="vector-user-links"> </div> </div> </div> </div> </div> <div class="mw-portlet mw-portlet-dock-bottom emptyPortlet" id="p-dock-bottom"> <ul> </ul> </div> <script>(RLQ=window.RLQ||[]).push(function(){mw.config.set({"wgHostname":"mw-web.codfw.main-69bdbbc57c-mrz2f","wgBackendResponseTime":240,"wgPageParseReport":{"limitreport":{"cputime":"0.947","walltime":"1.038","ppvisitednodes":{"value":52696,"limit":1000000},"postexpandincludesize":{"value":278660,"limit":2097152},"templateargumentsize":{"value":402607,"limit":2097152},"expansiondepth":{"value":30,"limit":100},"expensivefunctioncount":{"value":17,"limit":500},"unstrip-depth":{"value":0,"limit":20},"unstrip-size":{"value":120698,"limit":5000000},"entityaccesscount":{"value":1,"limit":400},"timingprofile":["100.00% 720.201 1 -total"," 35.30% 254.245 18 Шаблона:Книга"," 30.89% 222.462 17 Шаблона:Str_right"," 30.52% 219.796 17 Шаблона:Str_sub_long"," 18.57% 133.714 37 Шаблона:Cite_web"," 18.34% 132.115 38 Шаблона:Citation/core"," 12.31% 88.654 1 Шаблона:Інфобокс_языка_проґрамованя"," 11.71% 84.365 1 Шаблона:Інфобокс"," 10.27% 73.931 17 Шаблона:Str_index_any"," 9.63% 69.369 17 Шаблона:Str_≥_len"]},"scribunto":{"limitreport-timeusage":{"value":"0.047","limit":"10.000"},"limitreport-memusage":{"value":2936448,"limit":52428800},"limitreport-logs":"anchor_id_list = table#1 {\n [\"CITEREFAdrian_Stone.2009\"] = 1,\n [\"CITEREFBjarne_Stroustrup\"] = 1,\n [\"CITEREFC++_FQA\"] = 1,\n [\"CITEREFCatalin_Cimpanu2019\"] = 1,\n [\"CITEREFLutz_Prechelt_(Universität_Karlsruhe)2000\"] = 3,\n [\"CITEREFScott_Meyers2002\"] = 1,\n [\"CITEREFStroustrup1997\"] = 1,\n [\"CITEREFTIOBE2024\"] = 1,\n [\"CITEREFTorvalds_-_Convert_builin-mailinfo.c\"] = 1,\n [\"CITEREFvanDooren2008\"] = 1,\n [\"CITEREFСтрауструп\"] = 1,\n}\ntemplate_list = table#1 {\n [\"!\"] = 1,\n [\"Citar web\"] = 1,\n [\"Cite book\"] = 1,\n [\"Cite press release\"] = 1,\n [\"Cite web\"] = 37,\n [\"Cytuj\"] = 1,\n [\"Cytuj stronę\"] = 1,\n [\"Iw\"] = 3,\n [\"Lang-en\"] = 1,\n [\"Ref-en\"] = 3,\n [\"Reflist\"] = 1,\n [\"Sfn\"] = 7,\n [\"Wayback\"] = 1,\n [\"Webarchive\"] = 1,\n [\"Інфобокс языка проґрамованя\"] = 1,\n [\"Книга\"] = 18,\n [\"М\"] = 1,\n [\"Не перекладено\"] = 1,\n [\"Переход\"] = 1,\n [\"СПб\"] = 2,\n [\"Статья\"] = 17,\n [\"Статя\"] = 1,\n}\narticle_whitelist = table#1 {\n}\n"},"cachereport":{"origin":"mw-web.codfw.main-64b5bb4b79-fgmg6","timestamp":"20250301235345","ttl":2592000,"transientcontent":false}}});});</script> <script type="application/ld+json">{"@context":"https:\/\/schema.org","@type":"Article","name":"C++","url":"https:\/\/rue.wikipedia.org\/wiki\/C%2B%2B","sameAs":"http:\/\/www.wikidata.org\/entity\/Q2407","mainEntity":"http:\/\/www.wikidata.org\/entity\/Q2407","author":{"@type":"Organization","name":"\u0423\u0447\u0430\u0441\u043d\u0438\u043a\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0456\u0432 \u0412\u0456\u043a\u0456\u043c\u0435\u0434\u0456\u0430"},"publisher":{"@type":"Organization","name":"\u0424\u043e\u043d\u0434 \u0412\u0456\u043a\u0456\u043c\u0435\u0434\u0456\u0430","logo":{"@type":"ImageObject","url":"https:\/\/www.wikimedia.org\/static\/images\/wmf-hor-googpub.png"}},"datePublished":"2025-02-25T23:12:52Z","dateModified":"2025-02-27T20:10:45Z","image":"https:\/\/upload.wikimedia.org\/wikipedia\/commons\/1\/18\/ISO_C%2B%2B_Logo.svg","headline":"\u044f\u0437\u044b\u043a \u043f\u0440\u043e\u0491\u0440\u0430\u043c\u043e\u0432\u0430\u043d\u044f"}</script> </body> </html>