- история
- Проектиране и изпълнение
- Първоначално пускане
- С 2.0
- Стандартизирана версия
- Последни актуализации
- C ++ функции
- Популярен език
- Обектно ориентиран
- Процедурно
- Структурирано програмиране
- Управление на паметта
- показалки
- Съставен език
- Типове данни в C ++
- - Първично
- Int
- поплавък
- овъглявам
- двойно
- Празна (нула)
- Булева
- - Втори
- мерки
- показалки
- Характеристика
- - Дефинирано от потребителя
- структури
- съюз
- За какво е C ++? Приложения
- Приложения
- Операционна система
- Съставители
- Игри
- Уеб браузъри
- Интернет на нещата
- Облачни / разпределени системи
- Достъп до бази данни
- Примери
- библиотеки
- предимство
- скорост
- В близост до хардуер
- Ефективност
- Свобода при избора на стилове на програмиране
- Възможност за разбиване на сложни проблеми
- Възможност за откриване на грешки преди изпълнението
- Недостатъци
- Използване на указатели
- Проблеми със сигурността
- Няма боклук
- Отсъствие на нишка
- Съставени програми
- Може да е сложен
- Препратки
C ++ е подобрена и разширена версия на езика за програмиране на C, която е разработена от Stroustrup през 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 г. Stroustrup публикува известната си книга, наречена The C ++ Programming Language, превръщайки се в справочното ръководство за езика.
С 2.0
Най-важното издание на C ++ беше C 2.0 през 1989 г., документирано от Ellis и Stroustrup в The C ++ Annotated Reference Manual. Беше напълно обектно ориентиран език.
Стандартизирана версия
Първата стандартизирана версия, 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 е зададено на false и числото няма да бъде просто число.
Ако обаче числото не е напълно делимо от 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.
- Edureka! (2020). Кои са топ 10 функции на C ++? Взето от: edureka.co.
- Аман Гоел (2020). C ++ Език: Функции, приложения, приложения и предимства. Hack. Взета от: hackr.io.
- Steemit (2020). C ++: Научете се да кодирате. История, предимства, недостатъци на езика C ++. Взета от: steemit.com.
- Data Flair (2019). Научете типове данни в C и C ++ с пример само за 4 минути. Взета от: data-flair.training.