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

[wersja przejrzana][wersja nieprzejrzana]
Usunięta treść Dodana treść
Jdx (dyskusja | edycje)
m poprawa przek., WP:SK, linki zewnętrzne
Nie podano opisu zmian
Linia 39:
 
== Właściwości języka ==
* Język C++ jest językiem wieloparadygmatowym<ref>[[Bjarne Stroustrup]], [http://web.archive.org/web/20000816022258/http://www.research.att.com/~bs/oopsla.pdf "Why C++ is not just an Object-Oriented Programming Language"] {{lang|en}}</ref>. Oznacza to, że można w nim stosować jednocześnie różne style programowania, w tym programowanie proceduralne, obiektowe, generyczne, jak również programować na poziomie [[asembler]]a.
* Język C++ zakłada statyczną kontrolę typów; posiada też elementy dynamicznej kontroli typów.
* Język C++ umożliwia bezpośrednie zarządzanie wolną pamięcią.
* Projekt języka zakłada, że żadna nowa (względem języka C) cecha języka C++ nie może mieć negatywnego wpływu na szybkość działania programu lub zapotrzebowanie na pamięć operacyjną. Dzięki temu dobrze napisany program w C++ jest z reguły co najmniej równie szybki, jak jego odpowiednik napisany w C; co więcej, dzięki możliwości zastosowania algorytmów generycznych w wielu przypadkach C++ jest wyraźnie szybszy od C (np. podczas sortowania)<ref name="c">{{cytuj stronę| url = http://www.luna.umcs.lublin.pl/download/programowanie_c++.pdf | tytuł = Programowanie w C++ | autor = Grzegorz M. Wójcik| rok = 2009 |archiwum = http://web.archive.org/web/20090617135519/http://www.luna.umcs.lublin.pl/download/programowanie_c++.pdf | zarchiwizowano=2009-06-17 | data dostępu = 2015-04-16}}</ref>.
* Język C++ ze względu na bardzo rozbudowaną składnię oraz surowe wymogi w zakresie wydajności kodu stanowi duże wyzwanie dla twórców kompilatorów<ref name="c"/>.
* Do dziś (2012) żaden popularny kompilator nie jest w pełni zgodny z obowiązującym standardem języka, aczkolwiek ewentualne niezgodności dotyczą już tylko drugorzędnych cech języka (np. implementacji słowa kluczowego <code>export</code>)<ref>{{Cytuj stronę | url = http://anubis.dkuug.dk/jtc1/sc22/wg21/docs/papers/2003/n1426.pdf | tytuł = Why We Can’t Afford Export | nazwisko = Sutter | imię = Herb | nazwisko2 = Plum | imię2 = Tom | data = 2003-03-03 | język = en | data dostępu = 2015-04-16 | archiwum = http://web.archive.org/web/20110607081340/http://anubis.dkuug.dk/jtc1/sc22/wg21/docs/papers/2003/n1426.pdf | zarchiwizowano = 2011-06-07}}</ref><ref>{{Cytuj stronę | url = https://gcc.gnu.org/onlinedocs/gcc-4.4.0/gcc/Standards.html | tytuł = Language Standards Supported by GCC | praca = [https://gcc.gnu.org/onlinedocs/gcc-4.4.0/gcc/ Using the GNU Compiler Collection (GCC)] | opublikowany = [[Free Software Foundation]] | język = en | data dostępu = 2015-04-16}}</ref>.
 
== Historia ==