C++: Różnice pomiędzy wersjami
m (Czyszczenie tekstu) |
m (Infobox5 upgrade) |
||
Linia 1: | Linia 1: | ||
'''C++''' jest to język programowania ogólnego przeznaczenia. Daje możliwości programowania strukturalnego i [[Programowanie_obiektowe|obiektowego]]. Wspiera abstrakcję danych i [[programowanie]] uogólnione. Stworzony został przez '''Bjarne Stroustrupa''' a jego pierwsza wersja pojawiła się w roku 1979. | '''C++''' jest to język programowania ogólnego przeznaczenia. Daje możliwości programowania strukturalnego i [[Programowanie_obiektowe|obiektowego]]. Wspiera abstrakcję danych i [[programowanie]] uogólnione. Stworzony został przez '''Bjarne Stroustrupa''' a jego pierwsza wersja pojawiła się w roku 1979. | ||
Linia 67: | Linia 52: | ||
W kolejnej linii zadeklarowana jest [[funkcja]] <code>main</code>, od której program rozpoczyna swoje [[działanie]]. | W kolejnej linii zadeklarowana jest [[funkcja]] <code>main</code>, od której program rozpoczyna swoje [[działanie]]. | ||
Jeśli program dojdzie do instrukcji <code>return 0</code> i ją wykona oznacza to, że program zakończył się poprawnie. | Jeśli program dojdzie do instrukcji <code>return 0</code> i ją wykona oznacza to, że program zakończył się poprawnie. | ||
{{infobox5|list1={{i5link|a=[[Pascal (język programowania)]]}} — {{i5link|a=[[SmallTalk (język programowania)]]}} — {{i5link|a=[[Python]]}} — {{i5link|a=[[Java]]}} — {{i5link|a=[[Ruby]]}} — {{i5link|a=[[C (język programowania)]]}} — {{i5link|a=[[Cobol]]}} — {{i5link|a=[[COBOL (język programowania)]]}} — {{i5link|a=[[PHP]]}} }} | |||
==Bibliografia== | ==Bibliografia== |
Wersja z 14:03, 17 lis 2023
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.,Symfonia C++ Wydanie czwarte uzupełnione, Wydawnictwo Oficyna Kallimach, Kraków 1999, ISBN: 83-901689-1-X, s. 6-14
- Meyers, S. (1995). More effective C++: 35 new ways to improve your programs and designs
- Prata S., Język C++. Szkoła programowania. Wydanie V, Wydawnictwo Helion, Gliwice 2006, ISBN: 83-7361-958-5, s. 12-20
- Stroustrup B.,Język C++ Wydanie szóste, Wydawnictwo Naukowo-Techniczne, Warszawa 2002, ISBN: 83-204-2727-4, s. 5-25
Autor: Jarosław Zembal