C++: Różnice pomiędzy wersjami

Z Encyklopedia Zarządzania
m (Czyszczenie tekstu)
m (cleanup bibliografii i rotten links)
 
(Nie pokazano 6 wersji utworzonych przez 2 użytkowników)
Linia 1: Linia 1:
{{infobox4
|list1=
<ul>
<li>[[Pascal (język programowania)]]</li>
<li>[[SmallTalk (język programowania)]]</li>
<li>[[Python]]</li>
<li>[[Java]]</li>
<li>[[Ruby]]</li>
<li>[[C (język programowania)]]</li>
<li>[[Cobol]]</li>
<li>[[COBOL (język programowania)]]</li>
<li>[[PHP]]</li>
</ul>
}}
'''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++(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.
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ć "wymarzony” przez B. Stroustupa język programowania.
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 [[C_(język_programowania)|język C]].
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.
<google>text</google>


==Zastosowania==
==Zastosowania==
Linia 39: Linia 23:


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.
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.
<google>n</google>


==Niektóre różnice między C a C++==
==Niektóre różnice między C a C++==
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] = "maj”; </code>
* 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 44:
  Int main ()
  Int main ()
  {
  {
  cout << "Witaj świecie!;
  cout << "Witaj świecie!";
  return 0,
  return 0,
  }
  }
Linia 67: Linia 53:
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)]]}} &mdash; {{i5link|a=[[SmallTalk (język programowania)]]}} &mdash; {{i5link|a=[[Python]]}} &mdash; {{i5link|a=[[Java]]}} &mdash; {{i5link|a=[[Ruby]]}} &mdash; {{i5link|a=[[C (język programowania)]]}} &mdash; {{i5link|a=[[Cobol]]}} &mdash; {{i5link|a=[[COBOL (język programowania)]]}} &mdash; {{i5link|a=[[PHP]]}} }}


==Bibliografia==
==Bibliografia==
<noautolinks>
<noautolinks>
* Grębosz J.,''Symfonia C++ Wydanie czwarte uzupełnione'', Wydawnictwo Oficyna Kallimach, Kraków 1999, ISBN: 83-901689-1-X, s. 6-14
* 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''
* 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
* Prata S. (2006), ''Język C++. Szkoła programowania'', Helion, Gliwice
* Stroustrup B.,''Język C++ Wydanie szóste'', Wydawnictwo Naukowo-Techniczne, Warszawa 2002, ISBN: 83-204-2727-4, s. 5-25
* Stroustrup B. (2002), ''Język C++ Wydanie szóste'', Wydawnictwo Naukowo-Techniczne, Warszawa
</noautolinks>
</noautolinks>
[[Kategoria:Języki_programowania]]
[[Kategoria:Języki_programowania]]

Aktualna wersja na dzień 18:15, 7 sty 2024

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)PythonJavaRubyC (język programowania)CobolCOBOL (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