C++: Różnice pomiędzy wersjami
m (Czyszczenie tekstu) |
m (Czyszczenie tekstu) |
||
Linia 16: | Linia 16: | ||
'''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. | ||
W roku 1998 powstał oficjalny standard języka C++ "Information Technology - Programming Languages - C++ | 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== | ==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. | 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ł [[C_(język_programowania)|język C]], który uznał za idealny [[materiał]], który mógł posłużyć za podstawy do rozwoju. | Gdy rozpoczął pracę w AT&T poznał [[C_(język_programowania)|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ć " | 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 | Autor określa język C++, że jest on: ''"nadzbiorem języka C"'', ponieważ rozszerza zbiór udogodnień dostarczanych przez [[C_(język_programowania)|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. | 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. | ||
Linia 43: | Linia 43: | ||
W języku C++: | W języku C++: | ||
* nie ma obowiązku deklaracji zmiennych na początku bloku (zaraz po klamrze otwierającej) | * 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. <code> char miesiac[3] = " | * błędem jest inicjowanie tablicy typu char przy pomocy stałej łańcuchowej np. <code> char miesiac[3] = "maj"; </code> | ||
* korzystanie z prototypów funkcji jest obowiązkowe | * 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 | * można używać komentarzy rozpoczynających się symbolem //, a kończących wraz z końcem wiersza | ||
Linia 58: | Linia 58: | ||
Int main () | Int main () | ||
{ | { | ||
cout << "Witaj świecie! | cout << "Witaj świecie!"; | ||
return 0, | return 0, | ||
} | } |
Wersja z 16:16, 2 lis 2023
C++ |
---|
Polecane artykuły |
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.
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