Хто вигадав с. Лаби з інформатики, еге

Теги: Історія Сі, ANSI C, ISO C, C99, C11, ISO/IEC C, стандартизація сі.

Витоки

С і – це "супутній продукт", отриманий під час створення операційної системи UNIX, яка розроблялася в Bell Laboratories Кеном Томпсоном, Денисом Рітчі та ін. Томпсон наодинці написав оригінальну версію UNIX, яка працювала на DEC PDP-7, одному з перших мінікомп'ютерів всього з 8К слів в основній пам'яті (зрештою, це був 1969).

Як і інші операційні системи на той час, UNIX було написано на асемблері. Налагодження програм на асемблері справжнє борошно та їх проблематично покращувати, і UNIX не був винятком. Томпсон вирішив, що для подальшої розробки ОС потрібна мова високого рівняі придумав невелика мова B. За основу Томпсон взяв мову BCPL, мову системного програмування, розроблений у середині 60-х. BCPL, у свою чергу, бере початок від Алгола 60, одного з найперших (і надали найбільший вплив) мов.

Рітчі незабаром приєднався до проекту UNIX і почав писати на B. У 1970 році Bell Labs придбала для проекту PDP-11. Так як B був готовий до роботи на PDP-11, Томпсон переписав частину UNIX на B. У 1971 стало ясно, що B не зовсім підходить для PDP-11, тому Рітчі почав створювати розширену версію B. Спочатку він назвав її NB (New B ), але коли мова стала сильно відрізнятися від B, назву змінили на C. Мова до 1973 стала досить стабільною для того, щоб на ній можна було переписати UNIX. Перехід на C забезпечив важлива перевага: переносимість. Написавши компілятор C для кожної машини в Bell Labs, команда розробників могла портувати на них UNIX.

Стандартизація

C продовжив розвиватися в 70-х, особливо в період з 1977 по 1979, коли вийшла перша книга по C. Книга "Мова програмування Сі", написана Браяном Керніганом та Денисом Рітчі і опублікована у 1978 стала біблією програмістів на Сі. За відсутності офіційного стандарту ця книга - відома також як K&R, або "Біла Книга", як люблять називати шанувальники сі - фактично стала стандартом. У 70-х програмістів на C було небагато і більшість з них були користувачами UNIX. Тим не менш, у 80-х C вийшов за вузькі рамки світу UNIX. Компілятори C стали доступні на різних машинах, що працюють під керуванням різних операційних систем. Зокрема, Сі став поширюватися на платформі IBM PC, що швидко розвивається.

Разом із зростанням популярності виникли проблеми. Програмісти, що писали нові компілятори, брали за основу мову, описану в K&R. На жаль, у K&R деякі особливості мови були описані розпливчасто, тому компілятори часто трактували їх на власний розсуд. Крім того, в книзі не було чіткого поділу тим, що є особливістю мови, а що особливістю операційної системи UNIX. Погіршувало ситуацію і те, що після публікації K&R Сі продовжував розвиватися: до нього додавалися нові можливості і з нього вирізалися старі. Незабаром з'явилася очевидна необхідність у вичерпному, точному та відповідному сучасним вимогамопис мови. Без такого стандарту почали з'являтися діалекти мови, які заважали переносимості – найсильнішій стороні мови.

Розробка американського стандарту Сі почалася в 1983 під заступництвом Американського Національного ІнститутуСтандартів (ANSI). Після багатьох доопрацювань стандарт був закінчений у 1988 році і формально прийнятий у грудні 1989 року як стандарт ANSI X3.159-1989. У 1990 році він був затверджений міжнародною організацією зі стандартизації (ISO) як міжнародний стандарт ISO/IEC 9899:1990. Цю версію мови зазвичай називають C89 або C90, щоб не плутати її з оригінальною версією Сі, яку зазвичай називають K&R C.

Мова зазнала невеликим змінам 1995 (зміни описані в документі, який зазвичай називають Поправка 1). Значніші зміни відбулися в 1999 році, коли було опубліковано стандарт ISO/IEC 9899:1999. Мова, описана в цьому стандарті зазвичай називають C99. Терміни "ANSI C", "ANSI/ISO C" та "ISO C", що колись використовуються для опису C99 через існування двох стандартів, мають двояке тлумачення.

У 2011 році разом із редакцією мови Сі++ було випущено стандарт C11. Незважаючи на наявність стандарту 11 року, багато компіляторів досі не підтримують повністю навіть версії C99, тому використання стандарту С11 буде вказано явно.

Причини створення нової мови програмування. Основні відмінності С++ від інших відомих мов, його позитивні та негативні характеристики.

С++ - один з найбільш популярних мовпрограмування, що використовується для розробки програмного забезпечення, що підтримує процедурне (при якому послідовно виконувані команди можна зібрати в підпрограми), об'єктно-орієнтоване (стиль кодування, який дозволяє групувати завдання до класів), узагальнене програмування (написання коду, який може бути багаторазово використаний з об'єктами різних типів), що поєднує властивості високорівневих та низькорівневих мов. С++ використовується для створення програм, розрахованих на виконання певних завдань різних сферахжиття людини, ігор, драйверів, операційних систем та іншого. Він утворений на основі мови С. Багато програм С справно працюють і з компілятором С++ через тісний зв'язок.

Назва C++ походить від мови програмування C, в якій унарний оператор ++ позначає збільшення значення змінної на 1. Спочатку ця мова носила ім'я С з класами, потім стала називатися C++. Після літери С додано саме два плюси, тому що один утворює синтаксичну помилкуу мові С, а також це ім'я вже було зайняте.

С++ виник на початку 1980-х років. Бйорн Страуструп, співробітник фірми Bell Laboratories, удосконалив мову С під свої потреби. Тобто спочатку створення нової мови він не планував. Але наприкінці 70-х програміст почав працювати над завданнями теорії черг (у моделюванні телефонних викликів), він виявив, що спроби застосування діючих тоді мов моделювання, таких, як Симула і BCPL, виявляються неефективними, а застосування високоефективних машинних мов занадто складно. Так, мова Сімула має корисні для розробки великого програмного забезпечення можливості, але все працює надто повільно, а мова BCPL досить швидка, але дуже близька до низькорівневих мов, вона не підходить для розробки великих програм.

За поясненням Страуструпа, для створення нової мови програмування самої найкращою основоюпослужила мова С, тому що вона універсальна, проста, переносима, швидка і функціональна у виконанні багатьох завдань, стикується з середовищем програмування UNIX. Страуструп додав до З можливість роботи з типами даних (класами) та об'єктами. Завдяки швидкодії С практичні завданнямоделювання виявилися доступними для вирішення за часом розробки та обчислень. В першу чергу до C були додані типи даних, їх успадкування, перевірка типів та аргументи за умовчанням. Перші версії мови, що спочатку називалися Сі з класами, стали доступні з 1980 року. Потім Страуструп створив компілятор cfront, який переробляв код С++ код простого З, що дозволило відразу застосовувати його на практиці.

Мова стала неймовірно популярною. До 1983 року до нього були додані різні константи, віртуальні функції, посилання, перевантаження функцій та операторів, контроль користувача над керуванням вільної пам'яттю, покращена перевірка типів та новий стилькоментарів//. У 1985 вийшло видання Мова програмування C++, це був перший опис мови, що через відсутність офіційного стандарту було дуже важливо. У 1989 році відбувся вихід другої версії C з новими можливостями спадкування, функціями та класами. 1998 року було затверджено міжнародний стандарт мови C++. Він є вільним, ніхто не має права на володіння ним.

Стандарт C++ складається з двох основних частин: опис стандартного збірника підпрограм або об'єктів, що використовуються для розробки програм, та опис ядра мови. Крім того, існує велика кількістьнестандартних бібліотек C++. У програмах на C++ можна використовувати багато бібліотек C.

Нововведеннями C++ у порівнянні з C є:

Підтримка об'єктно-орієнтованого програмування;

Підтримка узагальненого програмування;

Нові типи даних;

Винятки – реакції програми на помилки;

Простір імен (сховища для угруповання унікальних ідентифікаторів);

Вбудовані функції;

Перевантаження операторів (існування в одній області видимості кількох різних варіантівзастосування оператора);

Доповнення до стандартної бібліотеки.

Також часто порівнюються Java та C++ як мови, які успадкували синтаксис Сі, незважаючи на великі відмінності на всіх рівнях. Java використовується в конкретному секторі промисловості: безпечна мова з низьким порогом входження для розробки прикладних додатків широкого ринку високими показникамиадаптації до іншого середовища. С++ претендує на універсальне застосування у всіх завданнях всім категорій програмістів, але не задовольняє повною мірою вимогам жодної із заявлених сфер застосування. Базова бібліотека С++ проти Java має менше ресурсів, але надає свободу вибору сторонніх бібліотек.

Подальший розвиток мови йтиме шляхом доповнення до існуючих стандартних бібліотек. Планом розвитку С++ на майбутнє є розширення узагальненого програмування.

ЛІТЕРАТУРА

1. https://ru.wikipedia.org/wiki/C%2B%2Bhttp://articles.org.ru/web/specperl.php

2. Бйорн Страуструп. Мова програмування C++. Спеціальне видання The C++ programming language. Special edition. М: Біном-Прес, 2007. 1104 с. ISBN 5-7989-0223-4

Був розроблений 1972 р. Денисом Рітчі на базі мови Бі. Було створено для використання в операційній системі Юнікс.Мова назвали Сі, тому що багато його особливостей беруть початок від старої мови Бі. Сі є найпопулярнішою мовою для створення системного програмного забезпечення. Його також часто використовують для створення прикладних програм . Надалі синтаксис Сі став основою багатьох інших мов. Мова Сі була створена вже після впровадження стандарту ASCII, тому використовує майже всі його графічні символи. Старіші мови (Фортран, Кобол) використовували лише круглі дужки, а у Сі є і круглі, і квадратні, і фігурні.Крім того, в Сі розрізняються великі і малі літери, А більш старі мови використовували лише великі.

У 1978 році Рітчі та Керніган опублікували першу редакцію книги «Мова програмування Сі».Наприкінці 1970-х Сі почав витісняти Бейсік із позиції провідної мови для програмування мікрокомп'ютерів. У 1980-х роках його адаптували для використання в IBM PC, що призвело до різкого зростання його популярності. У той же час співробітники в лабораторіях Bell Labs розпочали роботу з додавання до Сі можливостей об'єктно-орієнтованого програмування. Мова, яку вони зрештою зробили , С++,нині є найпоширенішою мовою програмування. Сі залишається більш популярним у UNIX-подібних системах.

2. Основні характеристики алгоритмічної мови Сі.

Мова часто називають мовою програмування середнього рівня. Але це не означає, що менш потужний, менш розвинений і більш важкий у використанні, ніж мови високого рівня, такі як Basic або Pascal. Це також не означає, що З такою ж громіздкою і незручною, як асемблер (мова низького рівня). Мовою середнього рівня його називають скоріше тому, що він поєднує в собі найкращі рисимов високого рівня з можливостями асемблера.

Як мова середнього рівня С дозволяє маніпулювати бітами, байтами та адресами, тобто тими базовими елементами даних, із якими працює комп'ютер. Незважаючи на це, програма, написана на С, має високу переносимість.Переносність – це властивість програмного забезпечення, створеного одного типу комп'ютера чи операційної системи, що дозволяє легко переробити його іншого типу, тобто. перенести в інше обчислювальне середовище.

Усі мови високого рівня дотримуються концепції типів даних. Тип даних є набором значень, що зберігаються в змінній, а також набір операцій, виконання яких допускається над цими значеннями. Звичайні типи даних – це цілі числа, символи та числа з плаваючою точкою . Мова має кілька вбудованих типів даних,однак не є сильно типізованою мовою, як Pascal або Ada. У мові З допускається майже всі перетворення типів. Наприклад, у виразах можна вільно змішувати змінні символьного та цілого типів.

На відміну від більшості мов високого рівня, в С майже відсутній контроль помилок у процесі виконання програми. Наприклад, не перевіряється порушення меж масивів. Відповідальність за такі помилки повністю покладається на програміста.

З не вимагає суворої сумісності параметрів та аргументів функцій. У мовах програмування високого рівня зазвичай необхідно, щоб тип аргументу більш менш відповідав типу параметра. Для цього не характерно, тут аргумент може мати майже будь-який тип, якщо його можна розумно перетворити на тип параметра. Більше того, компілятор автоматично здійснює всі види необхідних перетворень.

Важлива особливість С – це мала кількість ключових слів, складових команди мови. У С89 визначено 32 ключових слова, причому С99 додано лише 5 слів. Мови високого рівня зазвичай мають значно більше ключових слів, наприклад, у більшості версій мови Basic їхня кількість перевищує сотню!

Мова С добре структурована. У книгах із програмування використовується поняття блокової структурованості мови. Хоча цей термін і не можна застосовувати повною мірою до мови С, її зазвичай називають просто структурованою мовою.

Відмінною особливістю структурованої мови є окреме розміщення різних частин коду програми та даних. У такий спосіб програміст може «приховати» частину інформації, використовувану виконання специфічної завдання, від тих ділянок програми, де ця інформація не потрібна.

Структурована мова надає програмісту багато різних можливостей. Наприклад, структуровані мови зазвичай містять кілька операторів циклу, таких як while, do-while, for.

Мова програмування C++

Останнє оновлення: 28.08.2017

Мова програмування С++ представляє високорівневу компілювану мову програмування загального призначення зі статичною типізацією, який підходить для створення різних додатків. На сьогоднішній день С++ є однією з найпопулярніших і найпоширеніших мов.

Своїм корінням він сягає мови Сі, який був розроблений в 1969-1973 роках в компанії Bell Labs програмістом Деннісом Рітчі (Dennis Ritchie). На початку 1980-х років датський програміст Бьорн Страуструп (Bjarne Stroustrup), який на той час працював у компанії Bell Labs, розробив С++ як розширення до мови Сі. Практично спочатку C++ легко доповнював мову Си деякими здібностями об'єктно-орієнтованого програмування. І тому сам Страуструп спочатку називав його як "C with classes" ("Сі з класами").

Згодом нова мова стала набирати популярності. До нього були додані нові можливості, які робили його не просто доповненням до Сі, а новою мовою програмування. У результаті "Сі з класами" було перейменовано на С++. І з тих по обидві мови стали розвиватися незалежно одна від одної.

С++ є потужною мовою, успадкувавши від Сі багаті можливості роботи з пам'яттю. Тому нерідко С++ знаходить своє застосування у системному програмуванні, зокрема, під час створення операційних систем, драйверів, різних утиліт, антивірусів тощо. До речі, ОС Windows здебільшогонаписана на С++. Але тільки системним програмуваннямзастосування даної мовине обмежується. С++ можна використовувати у програмах будь-якого рівня, де важливі швидкість роботи та продуктивність. Нерідко він застосовується до створення графічних додатків, різних прикладних програм. Також особливо часто його використовують для створення ігор із багатою насиченою візуалізацією. Крім того, в Останнім часомнабирає хід мобільний напрямок, де С++ також знайшов своє застосування. І навіть у веб-розробці можна використовувати С++ для створення веб-додатків або якихось допоміжних сервісів, які обслуговують веб-додатки. Загалом С++ - мова широкого користування, якою можна створювати практично будь-які види програм.

С++ є мовою, що компілюється, а це означає, що компілятор транслює вихідний код на С++ у виконуваний файл, який містить набір машинних інструкцій. Але різні платформи мають свої особливості, тому скомпільовані програми не можна просто перенести з однієї платформи на іншу і там уже запустити. Однак на рівні вихідного коду програми на С++ більшою міроюмають переносимість, якщо не використовуються якісь специфічні для поточної ос функції. А наявність компіляторів, бібліотек та інструментів розробки майже під усі поширені платформи дозволяє компілювати той самий вихідний код на С++ у додатки під ці платформи.

На відміну від Сі мова C++ дозволяє писати додатки в об'єктно-орієнтованому стилі, представляючи програму як сукупність класів і об'єктів, що взаємодіють між собою. Що полегшує створення великих додатків.

Основні етапи розвитку

У 1979-80 роках Бьорн Страуструп розробив розширення до мови Сі - "Сі з класами". У 1983 мову було перейменовано на С++.

У 1985 році було випущено першу комерційну версію мови С++, а також перше видання книги "Мова програмування C++", яка представляла перше опис цієї мови за відсутності офіційного стандарту.

У 1989 була випущена Нова версіямови C++ 2.0, яка включала низку нових можливостей. Після цього мова розвивалася відносно повільно аж до 2011 року. Але при цьому в 1998 році була зроблена перша спроба стандартизації мови організацією ISO (International Organiztion for Standartization). Перший стандарт отримав назву ISO/IEC 14882:1998 або скорочено C++98. Надалі у 2003 було видано нову версію стандарту C++03.

У 2011 році був виданий новий стандарт C++11, який містив безліч додавань та збагачував мову С++ більшим числомнових функціональних можливостей Після цього у 2014 році було випущено невелике додавання до стандарту, відоме також як C++14. І ще один ключовий реліз мови намічено на 2017 рік.

Компілятори та середовища розробки

Для розробки програм на С++ необхідний компілятор - він транслює вихідний код мовою С++ виконуваний файл, який можна запускати. Але в теперішній моментЄ багато різних компіляторів. Вони можуть відрізнятися за різним аспектам, зокрема, щодо реалізації стандартів. Базовий список компіляторів для С++ можна переглянути у вікіпедії. Рекомендується для розробки вибирати ті компілятори, які розвиваються та реалізують усі останні стандарти. Так, протягом усього керівництва переважно використовуватиметься вільно розповсюджуваний компілятор g++, розроблений у рамках проекту GNU.

Також для створення програм можна використовувати інтегровані середовища розробки IDE, як Visual Studio, Netbeans, Eclipse, Qt і т.д.

Історія створення

Мова виникла на початку 1980-х років, коли співробітник фірми Bell Labs Бйорн Страуструп вигадав низку удосконалень до мови C під власні потреби. Коли наприкінці 1970-х років Страуструп почав працювати в Bell Labs над завданнями теорії черг (у додатку до моделювання телефонних викликів), він виявив, що спроби застосування існуючих на той час мов моделювання виявляються неефективними, а застосування високоефективних машинних мов занадто складно. через їх обмежену виразність. Так, мова Симула має такі можливості, які були б дуже корисні для розробки великого програмного забезпечення, але працює надто повільно, а мова BCPL досить швидка, але надто близька до мов низького рівня і не підходить для розробки великого програмного забезпечення.

Згадавши досвід своєї дисертації, Страуструп вирішив доповнити мову C (наступник BCPL) можливостями, що є у мові Симула. Мова C, будучи базовою мовоюсистеми UNIX, на якій працювали комп'ютери Bell, є швидким, багатофункціональним та переносимим. Страуструп додав до нього можливість роботи з класами та об'єктами. В результаті практичні завдання моделювання виявилися доступними для вирішення як з точки зору часу розробки (завдяки використанню Симула-подібних класів), так і з точки зору часу обчислень (завдяки швидкодії C). В першу чергу до C були додані класи (з інкапсуляцією), успадкування класів, сувора перевірка типів, inline-функції та аргументи за умовчанням. Ранні версії мови, що спочатку іменували C with classes (Сі з класами), стали доступні з 1980 року.

Розробляючи C з класами, Страуструп написав програму cfront — транслятор, що переробляє вихідний код C із класами у вихідний код простого C. Це дозволило працювати над новою мовою і використовувати її на практиці, застосовуючи вже наявну в UNIX інфраструктуру для розробки на C. Нова мова, несподівано для автора, набув великої популярності серед колег і незабаром Страуструп вже не міг особисто підтримувати його, відповідаючи на тисячі запитань.

При створенні C++ Бйорн Страуструп хотів
  • Отримати універсальна мовазі статичними типами даних, ефективністю та переносимістю мови C.
  • Безпосередньо та всебічно підтримувати безліч стилів програмування, у тому числі процедурне програмування, абстракцію даних, об'єктно-орієнтоване програмування та узагальнене програмування.
  • Дати програмісту свободу вибору, навіть якщо це дасть можливість вибирати неправильно.
  • Максимально зберегти сумісність із C, тим самим уможливлюючи легкий перехід від програмування на C.
  • Уникнути різночитань між C і C++: будь-яка конструкція, допустима в обох мовах, повинна в кожному з них позначати те саме і призводити до однієї і тієї ж поведінки програми.
  • Уникати особливостей, які залежать від платформи чи не є універсальними.
  • "Не платити за те, що не використовується" - ніяке мовний засібне повинно призводити до зниження продуктивності програм, що не використовують його.
  • Не вимагати надто ускладненого середовища програмування.

Вибір саме C як база для створення нової мови програмування пояснюється тим, що мова C:

1. є багатоцільовим, лаконічним та відносно низькорівневим мовою;
2. підходить для вирішення більшості системних завдань;
3. виконується скрізь і всьому;
4. стикується з середовищем програмування UNIX.

- Б. Страуструп. Мова програмування C++. Розділ 1.6

Незважаючи на низку відомих недоліків мови C, Страуструп пішов на її використання як основу, тому що «в C є свої проблеми, але їх мав би і розроблений з нуля мову, а проблеми C нам відомі». Крім того, це дозволило швидко отримати прототип компілятора (cfront), який лише виконував трансляцію доданих синтаксичних елементів оригінальну мову C.

У міру розробки C++ до нього були включені інші засоби, які перекривали можливості конструкцій C, у зв'язку з чим неодноразово порушувалося питання відмови від сумісності мов шляхом видалення застарілих конструкцій. Тим не менш, сумісність була збережена з таких міркувань:

  • збереження діючого коду, написаного спочатку на C і прямо перенесеного до C++;
  • виключення необхідності переучування програмістів, які раніше вивчали C (їм потрібно лише вивчити нові засоби C++);
  • виключення плутанини між мовами при їх спільному використанні(«якщо дві мови використовуються спільно, їх відмінності мають бути або мінімальними, або настільки великими, щоб мови було неможливо переплутати»).

До 1983 року в мову були додані нові можливості, такі як віртуальні функції, перевантаження функцій і операторів, посилання, константи, контроль над управлінням вільної пам'яттю, покращена перевірка типів і новий стиль коментарів (//). Мова вже перестала бути просто доповненою версією класичного C і була перейменована з C з класами в «C++». Його перший комерційний випуск відбувся у жовтні 1985 року.

Ім'я мови, що у результаті, походить від оператора унарного постфіксного інкременту C++ (збільшення значення змінної на одиницю).

До початку офіційної стандартизації мова розвивалася переважно силами Страуструпа у відповідь запити програмістського співтовариства. Функцію стандартних описів мови виконували написані Страуструпом друковані роботи з C++ (опис мови, довідковий посібник тощо).

Історія стандартів

У 1985 році вийшло перше видання "Мова програмування C++", що забезпечує перше опис цієї мови, що було надзвичайно важливо через відсутність офіційного стандарту.


1989 року відбувся вихід C++ версії 2.0. Його нові можливості включали множинне спадкування, абстрактні класи, статичні функції-члени, функції-константи та захищені члени. У 1990 році вийшло "Коментований довідковий посібник з C++", покладений згодом в основу стандарту. Останні оновлення включали шаблони, винятки, простори імен, нові способи наведення типів та булевський тип.

Стандартна бібліотека C++ також розвивалася разом із. Першим додаванням до стандартної бібліотеки C++ стали потоки введення-виводу, які забезпечують засоби заміни традиційних функцій C printf та scanf. Пізніше найзначнішим розвитком стандартної бібліотеки стало включення до неї Стандартної бібліотеки шаблонів.

У 1998 був опублікований стандарт мови ISO/IEC 14882:1998 (відомий як C++98), розроблений комітетом зі стандартизації C++ (ISO/IEC JTC1/SC22/WG21 working group). Стандарт C++ не визначає способи іменування об'єктів, деякі деталі обробки винятків та інші можливості, пов'язані з деталями реалізації, що робить несумісним об'єктний код, створений різними компіляторами. Однак для цього третіми особами створено безліч стандартів для конкретних архітектур та операційних систем.

У 2005 році було випущено звіт Library Technical Report 1 (коротко званий TR1). Не будучи офіційно частиною стандарту, звіт описує розширення стандартної бібліотеки, які, як очікувалося авторами, мають бути включені до наступної версії мови C++. Ступінь підтримки TR1 покращується майже у всіх підтримуваних компіляторах мови C++.

З 2009 року велася робота по оновленню попереднього стандарту, попередньою версією нового стандарту спочатку був C++09, а через рік C++0x, сьогодні — C++11, куди були включені доповнення до ядра мови та розширення стандартної бібліотеки, в тому числі більшу частину TR1.

C++ продовжує розвиватись, щоб відповідати сучасним вимогам. Одна з груп, які розробляють мову C++ і направляють комітету зі стандартизації C++ пропозиції щодо її поліпшення — це Boost, яка займається, в тому числі, удосконаленням можливостей мови шляхом додавання до неї особливостей метапрограмування.

Ніхто не має прав на мову C++, він є вільним. Однак сам документ стандарту мови (за винятком чернеток) не доступний безкоштовно.



Останні матеріали розділу:

Атф та її роль в обміні речовин У тварин атф синтезується в
Атф та її роль в обміні речовин У тварин атф синтезується в

Способи отримання енергії в клітці У клітці існують чотири основні процеси, що забезпечують вивільнення енергії з хімічних зв'язків при...

Вестерн блотінг (вестерн-блот, білковий імуноблот, Western bloting) Вестерн блоттинг помилки під час виконання
Вестерн блотінг (вестерн-блот, білковий імуноблот, Western bloting) Вестерн блоттинг помилки під час виконання

Блоттінг (від англ. "blot" - пляма) - перенесення НК, білків та ліпідів на тверду підкладку, наприклад, мембрану та їх іммобілізація. Методи...

Медіальний поздовжній пучок Введення в анатомію людини
Медіальний поздовжній пучок Введення в анатомію людини

Пучок поздовжній медіальний (f. longitudinalis medialis, PNA, BNA, JNA) П. нервових волокон, що починається від проміжного і центрального ядра.