C++
C++ jest to język programowania ogólnego przeznaczenia. Daje możliwości programowania strukturalnego i obiektowego. Wspiera abstrakcję danych i programowanie uogólnione. Stworzony został przez Bjarne Stroustrupa a jego pierwsza wersja pojawiła się w roku 1979.
W roku 1998 powstał oficjalny standard języka C++ "Information Technology - Programming Languages - C++" (ISO/IEC 14882) przygotowany przez grupę powołaną przez Międzynarodową Organizację Normalizacyjną (ang. ISO). Standard ten oczywiście zmieniał się wraz z rozwojem języka, obecnie obowiązuje wersja z 2011 roku.
Historia
Bjarne Stroustrup w celu uzyskania doktoratu pisał pracę dyplomową, używał języka Simula, jednak uważał że język ten ma wiele braków. Gdy rozpoczął pracę w AT&T poznał język C, który uznał za idealny materiał, który mógł posłużyć za podstawy do rozwoju. Język ten po przebudowach i wielu usprawnieniach miał dać "wymarzony" przez B. Stroustupa język programowania. Autor określa język C++, że jest on: "nadzbiorem języka C", ponieważ rozszerza zbiór udogodnień dostarczanych przez język C.
Podstawowym założeniem przy tworzeniu C++ było wykreowanie języka do programowania systemowego, który integrowałby właściwości obiektowe Simuli 67 z wydajnością języka C. Choć język C++ bazował głównie na tych dwóch językach programowania duży wpływ na jego rozwój miały także inne m.in. Algol 68, z którego zaczerpnięto przeciążanie operatorów, referencje, oraz możliwość deklaracji zmiennych w dowolnym miejscu, Ada w której doceniono wzorce, wyjątki oraz przestrzenie nazw, a z języków Meta Language i Clu przejęto obsługę wyjątków.
Zastosowania
Język C++ wykorzystywany jest głównie do programowania systemowego w bardzo szerokim zakresie. Jego implementacje obejmują urządzenia od najmniejszych mikrokomputerów, aż po sprzęt o ogromnej mocy obliczeniowej - superkomputery. Stosowany jest do tworzenia systemów operacyjnych oraz aplikacji użytkowych dla większości środowisk uruchomieniowych.
W języku tym napisane zostały systemy operacyjne lub ich części:
- Apple OS X
- IBM OS/400
- Windows NT, XP, Vista, 7
- Symbian OS
- Haiku OS
Do rozwoju programów język C++ używany jest w największych światowych korporacjach m.in: Adobe, Google, Facebook, Amazon, Ericsson, HP, IBM, Intel.
Niektóre różnice między C a C++
W języku C++:
- nie ma obowiązku deklaracji zmiennych na początku bloku (zaraz po klamrze otwierającej)
- błędem jest inicjowanie tablicy typu char przy pomocy stałej łańcuchowej np.
char miesiac[3] = "maj";
- korzystanie z prototypów funkcji jest obowiązkowe
- można używać komentarzy rozpoczynających się symbolem //, a kończących wraz z końcem wiersza
- stała typu
char
nie jest już traktowana jako wartość typu int, jak było to w języku C. - po nadaniu etykiety szablonowi struktury lub unii, etykieta może być używana jako nazwa typu
- typ wyliczeniowy podlega większym ograniczeniom niż w języku C
- przypisanie wskaźnikowi innego typu lub wartości liczbowej wymagają jawnego rzutowania
Przykładowy prosty program
#include <iostream>
using namespace std,
Int main ()
{
cout << "Witaj świecie!";
return 0,
}
Program ten ma na celu wyświetlenie na standardowym urządzeniu wyjściowym
cout
(ang. Console Output) napisu "Witaj świecie!".
Dyrektywa include
załącza bibliotekę pozwalającą na obsługę strumieni wejścia wyjścia (ang. Input/Output Stream)
W drugiej linii kodu, ustawiona zostaje przestrzeń nazw std
W kolejnej linii zadeklarowana jest funkcja main
, od której program rozpoczyna swoje działanie.
Jeśli program dojdzie do instrukcji return 0
i ją wykona oznacza to, że program zakończył się poprawnie.
C++ — artykuły polecane |
Pascal (język programowania) — SmallTalk (język programowania) — Python — Java — Ruby — C (język programowania) — Cobol — COBOL (język programowania) — PHP |
Bibliografia
- Grębosz J. (1999), Symfonia C++, Wydawnictwo Oficyna Kallimach, Kraków
- Meyers S. (1995), More effective C++: 35 new ways to improve your programs and designs
- Prata S. (2006), Język C++. Szkoła programowania, Helion, Gliwice
- Stroustrup B. (2002), Język C++ Wydanie szóste, Wydawnictwo Naukowo-Techniczne, Warszawa
Autor: Jarosław Zembal