C++ (дауысталуы "си плас плас") 1983 жылы Bell Labs зертханасында Бьёрн Страустрап дамытқан бағдарламалау тілі. 2019 жылға қарай әлемдегі таралуы бойынша үшінші бағдарламалау тілі болып келеді. C++ өзінің ұзақ тарихында көптеген өзгерістерден өтіп, бүгінгі күнге өте жылдам, компиляцияланатын, көптеген кітапханаларға ие тілге айналды. C++ жоғарғы және төменгі деңгейдегі программалау тілдерінің қасиеттеріне ие.

C++
бағдарламалау парадигмасы Multi-paradigm:[1] procedural, functional, object-oriented, generic
Пайда болды 1983
Дамытушы/дизайнері Bjarne Stroustrup
Бағдарламалық жасақтама дамытушысы
  • Bjarne Stroustrup
  • Bell Labs
  • ISO/IEC JTC1/SC22/WG21
Теру жүйесі Static, unsafe, nominative
Имплементациялары Үлгі:Nowraplinks
Бағдарламалық жасақтама тілінің диалекттері Үлгі:Nowraplinks
Бұған ықпал етті C, Simula, Ada 83, ALGOL 68, CLU, ML[1]
Ықпалы Perl, LPC, Lua, Pike, Ada 95, Java, PHP, D, C99, C#,[2] Falcon, Seed7
Операциялық жүйесі Cross-platform (multi-platform)

Тарихы өңдеу

С++ тiлi BCPL және B тiлдердiң негiзiнде құралған және С тiлiнен дамыған. BCPL тiлi компилятордан жазуға және операциялық жүйенi бағдарламамен қамтамасыз етуге арналған. Бұл тiлдi 1967 жылы Мартин Ричард ойлап тапқан. Кен Томпсон В тiлiнiң көптеген мүмкiндiктерiн BCPL дубликатында және В тiлiн UNIX операциялық жүйелерiнiң алғашқы версияларын құру үшiн 1970 жылы Bell Laboratories-те DEC PDP-7 компьютерiнде қолданылды. BCPL және В тiлдерi қолдануға тиiмсiз болды. Онда мәлiметтiң әрбiр элементi жадыда бiр сөздiң орнын алады және мәлiмет элементтерiн өңдеуде бағдарламашыларға ауыртпалығын тигiздi.

С тiлi В тiлiнiң негiзiнде дамыды. С тiлiн Bell Laboratories-те 1972 жылы Деннис Ритчи DEC PDP-11 компьютерiнде жасады. С BCPL және В тiлдерiнiң көптеген маңызды концепцияларын және мәлiмет типтерiн және басқа да қасиеттерiн қолданды. С тiлi UNIX операциялық жүйесiн өңдеудегi тiл ретiнде кеңiнен танымал болды. Қазiргi таңда барлық операциялық жүйелер С және С++ тiлдерiнде жазылған. Соңғы он жылдықта С тiлi көптеген компьютерлерде қолайлы болды.

С++ - С тiлiнiң кеңейтiлген түрi. Оны 1980 жылдың басында Бъерн Строустроп Bell Laboratories-сында өңдеп шығарған. С++ тiлi С тiлiнiң бiрқатар қасиеттерiн реттеудi қамтамасыз етедi және ең маңыздысы объектi-бағдарланған бағдарламалық мүмкiндiгiн қамтамасыз етедi. Бұл бағдарламамен қамтамасыздандыру әлемiндегi революциялық идея болып табылады.

Басқада бағдарламалық тiлдер көптеген қажеттi эффект бере алмағандықтан, С++ алғашқыда ең жоғарғы деңгейдегi нақтылы оқиғалар үлгiлерiн өңдеу мақсаты үшiн құрылған тiл болды.

С++ тiлiн құруда С тiлiнiң сәйкестiгiн сақтап қалуға ерекше көңiл бөлiндi. С++ тiлiнiң көмегiмен кең көлемдi бағдарламалық проектiлер құруға болады. С++ тiлiнiң арқасында берiлген мәлiметтер типтерiне бақылауды күшейтуге және көптеген қосымша эффектiлердi жеңе алатын болдық. С++ тiлiнiң ең маңызды табысы объектi-бағдарланған бағдарламалау болып табылады. С++-тiң барлық жеңiлдiктерiн пайдалану үшiн негiзгi объектiлердi және олармен байланысқан операцияларды анықтап алу керек.

С++ тілінің ерекшеліктері өңдеу

Көлемінің шағындығы өңдеу

С++ тілінің синтаксистік ережелері басқа тілдерге қарағанда аз,оның компиляторын 256 Кб жады көлемі арқылы-ақ жазып шығуға болады.Мұндағы операциялық әрекеттер,олардың комбинациясы жетерлік, бірақ қордағы түйінді сөздер саны да көп емес, Дэннис Ритчи жасаған алғашқы С++ тілінде тек 27 түйінді сөз болды,кейіннен ANSI C стандартында тағы бірнеше сөз қосылды.

Тілдің командалар жиыны өңдеу

Microsoft С/С++ нұсқасында тағы 19 командалар мен түйінді сөздер қосылды,соның нәтижесінде олар 66 болды. Командалар жыл сайын жанартулармен қосылуда.

Басқа программалау тілдердегі функциялар С++ тілінде жоқ,мысалы,енгізу-шығару операторлары да кездеспейді, оның есесіне кітапханалық әр түрлі функциялар саны жеткілікті.

Жылдам істейтіндігі өңдеу

С++ компиляторлары жасаған программа кодтары шағын,әрі жылдам істейді,оның үстіне тілдің аппараттық құралдарға жақындығы ассемблер тіліменен қатар жылдамдықпен жұмыс істеуге мүмкіндік береді.

Типтері де күрделі емес өңдеу

Паскальға қарағанда,мәліметтерді типтендіру мұнда төменгі деңгейде ,ол типтерді бір-біріне жеңіл ауыстырады.Мұндай қасиет В тілінен келді.Мысалы,программаның бір жерінде айнымалы символдық болса,ал басқа жерде оны символдың

ASCI –коды (одан 32-ні алып) ретінде қарастыруға болады.

Құрылымды тіл болғандығы өңдеу

С++ тілінде қазіргі тілдерде болатын барлық басқару операторлары бар. 1971 жылдың өзінде-ақ жаңа ғана жасалған С++ тілі алғашқы құрылымдық программалау тілі ретінде танылған еді.Мұнда;for – цикл операторы, if және if-else конструкциясы, таңдау операторы (switch) және while циклы да бар.

Модульдік программалауды сүйемелдеуі өңдеу

С++ тілінде жеке компиляциялау мен біріктіруден құралатын модульдік программалау концепциясы пайданылады.Мұнда тек программаның өзгертілген бөліктерін жеке компиляциялау мүмкіндігі бар.

Екілік разрядтағы өңдеуі өңдеу

Жүйелік программалауда екілік разрядтарды өңдеу ісі жиі кездеседі.Әрине, UNIX операциялық системасымен тығыз байланыста пайда болған С++ тілінің екілік сандармен жұмыс істеу мүмкіндіктері өте зор.

Нұсқаушы айнымалылар

Операциялық жүйе тіліне қойылатын тағы бір талап — ол жады аймақтарын адрестеу мүмкіндігінің болуы. Мұндй мүмкіндік программа орындалуын жылдамдатады. С++ тілінде мұндай істі нұсқаушылар (указатели) атқарады және олармен арифметикалық амалдарды орындауға болады.

Құрылымы икемді тіл өңдеу

С++ тіліндегі барлық массивтер — бір өлшемді. Көп өлшемді массивтер осы бір өлшемді массивтерден құрылады. Массивтер мен құрылымдар (жазбалар) бір – бірімен керекті түрде байланысып, мәліметтер базасын құрайды.

Дереккөздер өңдеу

  1. a b Stroustrup Bjarne 1 // The C++ Programming Language — Third. — 1997. — ISBN 0-201-88954-4.
  2. Naugler, David (мамыр 2007). "C# 2.0 for C++ and Java programmer: conference workshop". Journal of Computing Sciences in Colleges 22 (5). "Although C# has been strongly influenced by Java it has also been strongly influenced by C++ and is best viewed as a descendant of both C++ and Java.". 

Сыртқы сілтемелер өңдеу


Ортаққорда бұған қатысты медиа файлдар бар: Category:C++