- Історія
- Розробка та реалізація
- Початковий реліз
- C 2.0
- Стандартизована версія
- Останні оновлення
- C ++ Особливості
- Популярна мова
- Об'єктно-орієнтована
- Процедурний
- Структурне програмування
- Управління пам'яттю
- Покажчики
- Складена мова
- Типи даних у C ++
- - Первинний
- Int
- Поплавок
- Чар
- Подвійний
- Порожній (нульовий)
- Бул
- - Вторинні
- Домовленості
- Покажчики
- Особливості
- - Визначений користувачем
- Структури
- Союз
- Для чого C ++? Програми
- Програми
- Операційні системи
- Компілятори
- Ігри
- Веб-браузери
- Інтернет речей
- Хмара / розподілені системи
- Доступ до баз даних
- Приклади
- Бібліотеки
- Перевага
- Швидкість
- Близький до обладнання
- Ефективність
- Свобода вибору стилів програмування
- Можливість розбити складні проблеми
- Можливість виявлення помилок перед виконанням
- Недоліки
- Використання покажчиків
- Питання безпеки
- Жодного сміттєзбірника
- Відсутність нитки
- Складені програми
- Може бути складним
- Список літератури
C ++ - це вдосконалена і розширена версія мови програмування на С, яка була розроблена Струструпом у 1979 році в рамках свого докторського проекту. Stroustrup розробив те, що він назвав "C з класами", яке згодом було названо C ++, оскільки він вважав, що існуючі мови програмування мають обмеження і не є найкращими для масштабних проектів.
Ось чому він використовував C для розробки потрібної мови програмування, оскільки C була ефективною мовою та швидкою експлуатацією.
Джерело: pixabay.com
C ++ - мова програмування загального призначення, яка є вишуканою та потужною. Ця складена мова у вільній формі найкраще підходить для програмістів середнього рівня.
Однак ті, хто хоче розпочати програмування на C ++, виявлять, що зможуть швидко засвоїти концепції програмування, які пройдуть їх довгий шлях у кар’єрі.
Він сумісний з об'єктно-орієнтованим програмуванням, беручи всі його характеристики. Ці поняття роблять мову C ++ різною, і вона в основному використовується для розробки програм у легкий та концептуалізований спосіб.
Історія
Розробка та реалізація
C ++ був розроблений та впроваджений у 1980 році Bjarne Stroustrup в AT&T Bell Labs, чудово поєднуючи концепції процедурного та об'єктно-орієнтованого програмування.
У мові C оператор ++ використовується для збільшення змінної, тим самим виявляючи думку Stroustrup про те, що C ++ буде наступним поколінням мови C.
Початковий реліз
C ++ був випущений в 1985 році вперше на ринку. У 1986 році Струструп опублікував свою відому книгу під назвою Мова програмування на C ++, ставши довідковою інструкцією для цієї мови.
C 2.0
Найважливішим випуском C ++ став C 2.0 у 1989 році, задокументований Еллісом та Струструпом у Довідковому посібнику з анотацією C ++. Це була абсолютно об'єктно-орієнтована мова.
Стандартизована версія
Перша стандартизована версія, C ++ 98, була випущена в 1998 році. Цей міжнародний стандарт на C ++ був розроблений Американським національним інститутом стандартів (ANSI) та Міжнародною організацією зі стандартів (ISO).
У 2003 році був опублікований наступний стандарт C ++ 03 з метою виправлення помилок, виявлених у C ++ 98, та забезпечення того, щоб мова мала більшу портативність та послідовність.
Останні оновлення
Наступне велике оновлення мови надійшло в 2011 році, і воно називалося C ++ 11. Для покращення його виконання було додано кілька функцій.
Тоді було випущено C ++ 14, де було внесено деякі вдосконалення та виправлення помилок C ++ 11. Наступною версією, випущеною у 2017 році, став C ++ 17, який має кілька нових функцій та набагато більш широку стандартну бібліотеку.
C ++ Особливості
Популярна мова
C ++ широко використовується розробниками, в основному в додатках. Він містить усі важливі частини, як основна мова, яка забезпечує всі необхідні блоки розвитку, такі як змінні, типи даних, літерали тощо.
Це четверта за популярністю мова програмування за індексом спільноти програмування TIOBE.
Використання C ++ робить його найбільш зручною мовою, завдяки своїм характеристикам. Це перша мова для запуску будь-якого розробника, який зацікавлений у роботі з мовами програмування. Це легко вивчити, оскільки це суто концептуальна мова.
Його синтаксис дуже простий, що дозволяє легко писати, а помилки можна легко повторити. Перш ніж використовувати будь-яку іншу мову, програмісти вважають за краще спочатку вивчати C ++, а потім використовувати інші.
Однак більшість розробників намагаються дотримуватися C ++ завдяки широкому спектру використання та сумісності з декількома платформами та програмним забезпеченням.
Об'єктно-орієнтована
Основним оновленням з C до C ++ є об'єктно-орієнтоване програмування. Це означає, що увага зосереджена на "об'єктах" та обробці навколо цих об'єктів.
Він слідує концепціям поліморфізму, успадкування, інкапсуляції та абстракції, що сприяє розвитку та підтримці.
Процедурний
C ++ підтримує концепцію процедур та підпрограм, які укладають сегменти коду в блоки багаторазового використання, які можуть бути «викликані» для виконання окремих завдань.
Процедури та підпрограми відомі як функції в C ++. Функція може приймати нуль або більше параметрів і повертати нуль або значення.
Структурне програмування
Код C ++ є модульним, з підтримкою функцій, класів та об'єктів, модулі вільно вміщуються.
Виписки контролю потоку в C ++ схожі з тими, що зустрічаються у багатьох інших структурованих мовах програмування. Це if-else, щоб реалізувати логіку рішення, і для, while, і do-while для реалізації ітерацій чи циклів.
Управління пам'яттю
C ++ підтримує динамічне розподіл пам'яті. Таким чином, ви можете звільнити виділену пам’ять у будь-який час.
Покажчики
Вони є змінними, які зберігають адресу іншої змінної. Вказівник вказує на місце пам'яті змінної. C ++ підтримує покажчики для вирішення багатьох проблем, які потребують доступу до місця пам'яті.
Складена мова
Перш ніж її виконати, програма C ++ повинна бути переведена в рідні інструкції цільової машини програмою, що називається компілятором. Без компіляції жодна програма C ++ не може працювати. Компілятор компілює програму C ++, щоб потім її можна було запустити.
Типи даних у C ++
- Первинний
Int
Він використовується для зберігання цілих номерів. Пам'ять, яку він займає, залежить від компілятора (32 або 64 біта). Він займає 4 байти пам'яті при роботі з 32-розрядним компілятором.
Поплавок
Він використовується для зберігання дробів до 7 знаків після коми. Він відомий як єдиний тип плаваючої точки з точністю. Він займає 4 байти пам'яті.
Чар
Він використовується для зберігання набору всіх символів. Він може включати літери алфавіту, цифри, а також спеціальні символи. Він займає 1 байт оперативної пам’яті, будучи найменшим адресним блоком в машині.
Подвійний
Використовується для зберігання дробів до 15-16 десяткових цифр. Загальновідомий як тип з плаваючою точкою подвійної точності.
Порожній (нульовий)
Позначає нульове значення або не має значення повернення. Зазвичай використовується для призначення нульового значення при оголошенні функції.
Бул
Цей тип даних посилається на булеве або логічне значення. Він може приймати значення істинного або хибного.
- Вторинні
Домовленості
Це набір даних, що мають однотипні дані, до яких звертається загальна назва.
Покажчики
Вони в основному є змінними, які використовуються для зберігання адреси пам'яті іншої змінної.
Особливості
Це група речень, які виконують конкретне завдання. Функції - це вбудовані або визначені користувачем бібліотеки.
- Визначений користувачем
Структури
Це тип даних, в якому колекція різних типів даних може бути зроблена та доступна через об’єкт.
Союз
Надає можливість зберігати різні типи даних в одному і тому ж місці пам'яті.
Для чого C ++? Програми
Програми
Багато програм у системах Adobe розроблено на C ++, такі як Illustrator, Photoshop, Adobe Premiere та Image Ready.
Операційні системи
C ++ використовується у всіх основних операційних системах, таких як Linux, Windows та macOS, оскільки це мова програмування низького рівня.
Компілятори
Більшість компіляторів написані мовою C ++. Також компілятори, які використовуються для компіляції інших мов, таких як C #, Java тощо.
Ігри
Він служить для усунення складності 3D-ігор, допомагаючи оптимізувати ресурси. Крім того, він сумісний з багатокористувацькою опцією в мережах.
Веб-браузери
Це дозволяє швидко виконувати та представляти графіку, що є критичним для сучасних користувачів, які вимагають вмісту, який може швидко з’являтися у веб-браузерах. C ++ використовувався для створення веб-браузерів Google Chrome та Mozilla Firefox.
Інтернет речей
У різних продуктах Internet of Things, таких як смарт-годинник, машини, пральні машини, маршрутизатори та комутатори, використовується C ++, оскільки для них потрібен код, максимально наближений до апаратного забезпечення.
Хмара / розподілені системи
Він використовується в хмарі в системах зберігання даних і розподілених системах, де масштабованим файловим системам необхідно тісно співпрацювати з обладнанням, а сумісність з різними машинами також є критичною.
Доступ до баз даних
Він використовується для розробки ПЗ з відкритим кодом. Дуже популярне програмне забезпечення для управління базами даних, яке використовується в організаціях, MySQL, написане на C ++ завдяки перевагам, які він пропонує.
Існують і інші додатки, засновані на доступі до програмного забезпечення баз даних, це Wikipedia, Yahoo, YouTube, Quora тощо.
Приклади
Ця програма отримує від користувача додатне ціле число і зберігає його у змінній n. Потім виконується цикл for, який перевіряє, чи введене число ідеально ділиться на io чи ні.
Цикл for починається з початкового значення i, рівного 2, збільшуючи значення i з кожною ітерацією. Якщо число, введене користувачем, ідеально поділяється на i, параметр isPrime встановлюється на хибне, а число не буде простим числом.
Однак якщо число не ідеально ділиться на i, поки умова випробування i <= n / 2 не відповідає дійсності, це означає, що воно ділиться лише на 1 і те саме число. Отже, задане число є простим числом.
Бібліотеки
Розробники мають доступ до багатьох вбудованих функцій, що надаються мовою C ++. Це економить час і прискорює розвиток. Деякі з файлів заголовків C ++ із наданими функціоналами:
- iomanip: містить обробники потоків, які форматують потоки даних.
- iostream: містить стандартні функції введення та виведення.
- cstdlib: містить функцію перетворення чисел у текст і навпаки,
- cmath: містить математичні функції бібліотеки, розподіл пам'яті, випадкові числа та різні інші корисні функції.
- fstream: містить функції, які виконують введення та виведення файлів на диску.
- ctime: містить функцію обробки часу та дати.
- пам'ять: містить класи та функції, використовувані Стандартною бібліотекою C ++ для розподілу пам'яті.
Перевага
Швидкість
Оскільки C ++ є розширеною версією C, що є мовою програмування низького рівня, це одна з найшвидших доступних мов. Це робить його корисним у тих сферах, де необхідні показники є критичними.
Близький до обладнання
C ++ - одна з мов програмування, найбільш близька до апаратної. Це дуже вигідно в тих просторах, де програмне забезпечення повинно мати тісний зв’язок із апаратним забезпеченням для ефективної підтримки низького рівня.
Ефективність
C ++ має стандартну бібліотеку шаблонів, яку можна широко використовувати при кодуванні. Ці бібліотеки забезпечують ефективні алгоритми, що дозволяють програмісту заощадити час та зусилля, які в іншому випадку витрачаються на витрату коду.
Свобода вибору стилів програмування
C ++ підтримує близько семи різних стилів кодування, що робить його багатомодельною мовою програмування. Таким чином, ви можете вибрати стиль, який відповідає конкретному випадку використання, не використовуючи об’єкти.
Можливість розбити складні проблеми
C ++ може вирішувати складні проблеми інтуїтивно, створюючи об’єкти. Крім того, функції C ++ дозволяють розділити свій код на кодові блоки, які зрозумілі, прості для розуміння та прості тестування та зміни.
Можливість виявлення помилок перед виконанням
C ++ має статичний тип, що означає, що компілятор не робить припущень щодо того, що пише програміст. Перевага полягає в тому, що компілятор може вловлювати помилки та збої перед виконанням, що може заощадити час у довгостроковій перспективі.
Недоліки
Використання покажчиків
Покажчики є відносно важкою концепцією для розуміння, а також споживають багато пам’яті. Неправильне використання вказівника може призвести до того, що система зависає або поводиться ненормально.
Основна проблема полягає в тому, коли дані вказують однакові з двох різних вихідних точок, викликаючи значну проблему, створюючи заплутані проблеми в кодуванні.
Питання безпеки
Хоча об'єктно-орієнтоване програмування забезпечує велику безпеку оброблюваних даних, все ж є проблеми із захистом через наявність дружніх функцій, глобальних змінних та покажчиків.
Жодного сміттєзбірника
C ++ дає користувачеві повний контроль над керуванням пам'яттю комп'ютера. У ньому відсутня функція збирача сміття, щоб автоматично фільтрувати непотрібні дані, а тому не підтримує динамічне розподіл пам'яті.
Відсутність нитки
C ++ не підтримує вбудовані потоки. Поняття нитки порівняно нове в C ++, оскільки воно спочатку не існувало. Тепер C ++ здатний підтримувати лямбда-функції.
Складені програми
Як мова компіляції, виконувані файли, створені компілятором з вихідного коду, не є портативними і працюватимуть лише на цільовій платформі (апаратне забезпечення та операційна система), для якої вони були скомпільовані, або підтримуваній бінарній платформі.
Може бути складним
C ++ може бути складним, оскільки дозволяє класи, які є функціями з однаковою назвою. Тому необхідно використовувати систему обробки символів. Крім того, він є складним для дуже великої програми високого рівня. C ++ зазвичай використовується для платформних програм.
Список літератури
- Simplilearn (2020). Програмування на C ++ для початківців: історія, переваги та програми. Взято з: simplelearn.com.
- Educba (2020). Використання C ++ в реальному світі. Взято з: educba.com.
- Дмитро Рассохін (2020). Мова програмування на C ++ у галузі хімічної інформатики та обчислювальної хімії. Журнал хімінформатики. Взято з: jcheminf.biomedcentral.com.
- Едурека! (2020). Які основні 10 особливостей C ++? Взято з: edureka.co.
- Аман Гоел (2020). Мова C ++: Особливості, використання, додатки та переваги. Рубати. Взято з: hackr.io.
- Steemit (2020). C ++: навчитися кодувати. Історія, переваги, недоліки мови C ++. Взято з: steemit.com.
- Data Flair (2019). Дізнайтеся про типи даних у форматі C та C ++ із прикладом всього за 4 хвилини. Взято з: data-flair.training.