Encyklopedia w Markpol

Reklama: zabudowa wnętrz

Język C++ jest językiem programowania "o wielu paradygmatach", m.in. również obiektowo zorientowanym. Stworzony w latach osiemdziesiątych XX wieku przez Bjarne Stroustrupa. Na język C++ wpływ miały, poza językiem C, jako jego podstawą, przede wszystkim Simula, z której zaczerpnął właściwości obiektowe, a także języki takie, jak Algol, Ada, ML i Clu. Początkowo język C++ był dostępny w takim standardzie, w jakim opracowano ostatnią wersję kompilatora Cfront (tłumaczący C++ na C), później opublikowano pierwszy nieformalny standard zwany ARM (Annotated Reference Manual), który sporządzili Bjarne Stroustrup i Margaret Ellis. Standard języka C++ powstał w 1998 roku (ISO/IEC 14882-1998 "Information Technology - Programming Languages - C++"). Standard ten zerwał częściowo wsteczną zgodność z ARM w swojej bibliotece standardowej; jedyne, co pozostało w stanie w miarę nienaruszonym to biblioteka iostream. Początkowo najważniejszą rzeczą wprowadzoną w C++ w stosunku do C było programowanie obiektowe, później jednak wprowadzono do niego mnóstwo ulepszeń, czyniąc ten język wygodniejszym i bardziej elastycznym od swojego pierwowzoru. Nie od rzeczy jest też wspomnieć, że niektóre zmiany w standardzie języka C były w większości zainspirowane językiem C++ (np. słowo const). Nazwa języka została zaproponowana przez Ricka Mascitti w 1983 roku, kiedy to po raz pierwszy użyto tego języka poza laboratorium naukowym. Odzwierciedla ona fakt, że język ten jest rozszerzeniem języka C. Wcześniej używano nazwy "C z klasami". Pierwsze kompilatory języka C++, podobnie jak Cfront, były wyłącznie translatorami na język C. Kompilatory takie dostępne są i dziś, ale niestety nie oferują one wszystkich właściwości języka C++. Pierwszym kompilatorem natywnym (produkującym od razu kod asemblerowy) dla języka C++ był g++ z pakietu gcc, którego pierwszym autorem był Mike Tiemann, założyciel Cygnus Solutions. Przykładowy program:
  • include // wstawiamy plik nagłówkowy biblioteki iostream int main() // funkcja main { std::cout << "Hello, world!" << std::endl; //wprowadzenie tekstu na ekran return 0; // koniec programu }
  • Nowe cechy języka C++

    Niektóre z nich trafiły do języka C, najpierw nieoficjalnie, później zaś zostały ustandaryzowane w C99.
  • Klasy wraz z innymi elementami języków zorientowanych obiektowo takimi jak: dziedziczenie, metody wirtualne
  • Dodatkowe ulepszenia klas, konstruktory, destruktory (język C++ był pierwszym językiem w którym użyto nazwy "konstruktor" w tym właśnie znaczeniu i pierwszym językiem, który posiadał destruktory)
  • Szablony (wzorce) klas i funkcji
  • Obsługa wyjątków
  • Deklaracje zmiennych jako instrukcje (w ANSI C wszystkie zmienne lokalne funkcji musiały być zadeklarowane przed pierwszą jej instrukcją)
  • Dynamiczna inicjalizacja zmiennych globalnych i lokalnych zmiennych statycznych (tzn. mogły być inicjalizowane wynikiem wywołanej funkcji)
  • Przestrzenie nazw
  • Referencje
  • Operatory new i delete
  • Operator zasięgu (::) (w ANSI C nie istnieje możliwość odwołania się do zmiennej globalnej o tej samej nazwie, co zmienna lokalna)
  • Dynamiczna kontrola typów RTTI
  • Przeciążanie funkcji
  • Przeciążanie operatorów
  • Wskaźniki do składowych (pól i metod)
  • Jednolinijkowe komentarze (//), pochodzące z języka B (również C99)
  • Funkcje rozwijalne (inline) (również C99)
  • Nowy typ bool i stałe true i false (również C99)
  • "Szeroki" typ znakowy, wchar_t (również C89) wraz ze wszystkimi zależnościami (wiostream i reszta, nagłówek , wstring)

    Chcesz wypromować swoją stronę w internecie?? - nie zwlekaj pozycjonowanie w Luman.biz to rozsądny wybór
    2005 Encyklopedia
    These materials are based onWikipedia and licensed under the GNU FDL
    Loan|Compare|Equity|Online Advertising|Mortgages