C++

Z Nonsensopedii, polskiej encyklopedii humoru
Ten artykuł jest częścią cyklu naukowego języki komputerowe.

Języki programowania:


Inne języki komputerowe:


edytuj ten szablon

C++ – nowoczesne, wielofunkcyjne rozszerzenie języka C. W odróżnieniu od C opiera się nie na funkcjach, lecz na obiektach, co w połączeniu z typowymi dla C instrukcjami niskiego poziomu pozwala pisać programy 10E+5 do 10E+10 razy mniej czytelne niż w C. Składnia C++ jest aż tak nieczytelna, że dużo łatwiej domyślić się, do czego służy program po jego kodzie binarnym niż w źródle, tzw. cepie. Mało osób zna C++, lecz wszyscy C.

Czego potrzeba na początek?

Aby poznać trudy programowania (a przynajmniej podstawy), potrzeba następujących rzeczy:

  • komputera – pisanie programów na kartce jest więcej niż niewygodne;
  • kompilatora – jest to program, który spróbuje przetłumaczyć nasze wypociny na język zrozumiały dla komputera; Początkujący nazywają go "komplikatorem", jest to błędna nazwa, chociaż oddaje wiele prawdy.
  • świętej cierpliwości – przydatna, jeśli wciąż wyskakują nam błędy, a my nie potrafimy ich znaleźć. Jej brak skutkuje często zniszczeniem sprzętu przy pomocy głowy walącej w klawiaturę, nogi kopiącej jednostkę centralną, czy pięści rozbijającej monitor.
  • znajomego informatyka – przyda się, kiedy nam się uda zepsuć sprzęt lub system padnie dzięki naszym umiejętnościom programowania.
  • pieniędzy – przydają się na honorarium dla znajomego informatyka, kiedy braknie nam świętej cierpliwości.

Początki nauki C++

Koniecznie trzeba wtedy napisać program, który wyświetli nam w konsoli/terminalu napis Hello, world (opcjonalnie Spieprzaj, dziadu). Oto jego kod źródłowy wraz z komentarzami:

#include <iostream> /*dołącza bibliotekę iostream. Nikt nie wie, do czego to właściwie służy
Ilość osób, która wie, do czego to służy jest liczbą ujemną.*/
using namespace std; // prawdopodobnie służy to temu, byśmy mogli napisać program łatwo
int main() // to jest funkcja główna, czyli taki worek na wszystko. { cout << "Hello world"; /* oto standardowy strumień wyjścia. Zapamiętaj tę nazwę i formułę!
W cudzysłowie można napisać co się chce, w tym wspomniane wcześniej spieprzaj dziadu.*/ cin.get(); // to jest po to, by program w windowsowskiej konsoli się wyświetlił, a nie mignął. return 0; // Program zwraca takie samo zero, jakim sam jest od początku. }

Jak widać, choćby nie wiadomo, jak się człowiek starał, kod zawsze będzie zupełnie nieczytelny.
A oto program istoty grajacej w Tibię kod źródłowy:

#include<iostream>
using namespace std;
int main() { const unsigned long long w=36000000000000000000;//stała w ma wart. 36 miliardow miliardow(za duzo zeby napisac slownie). double tablica [w];//daje zeby bylo 36 miliardow miliardow zmiennych ok. 260000 pb(1pb=1024tb, 1tb=1024gb) :}. tablica[1]=1;//zabiera z tego 1 zmienna i daje jej wartosc 1 double tablica2[w];//druga liczba tablica2[1]=0;//to samo double wynik[w];//wynik wynik[1]=tablica2[1]+tablica[1];//oblicza dzialanie 1+1 bo sam nie umie cout<<wynik[1]; system("start c:/tibia");//rozpoczyna fascynujaca gre return 0; /*tibiak nie potrzebuje cin.get bo on to zobaczy tak czy siak bo w tibi przyzwyczjil swe oczy do
znikajacych cyferek*/ }

Na koniec program ma ok. 780000 pb. jak ktos chce

Schody

Schody w programowaniu C++ zaczynają się szybko, można wyróżnić wiele z nich, m.in.:

  • funkcje – dziwne twory umieszczane po dyrektywach preprocesora używane później w funkcji głównej main.
  • tablice – przez specjalistów zwane fachowo tabelami. Przechowują wiele zmiennych tego samego typu.
  • typy zmiennych – w C++ istnieje wiele typów zmiennych, a każda służy do czego innego. Większość osób, które porwały się na naukę tego języka poprzestaje na zmiennej typu int, ale i tak nie wie dokładnie, jaki ma ona zakres. Zaawansowani cepiarze znają typ float, jednak nie da się go opisać w kilku zdaniach, niektóre tysiąc-stronnicowe książki nie potrafią tego dobrze wytłumaczyć.
  • pętle – jak sama nazwa wskazuje, służy do zapętlania programu, by robił jedno i to samo do pewnego momentu. W praktyce wychodzi często, że do nieskończoności, tzn. aż komputer się zawiesi.
  • struktury – twory, których nikt nie potrafi stosować, a z założenia zbierają kilka informacji jednocześnie.
  • tablice struktur – połączenie tablic i struktur. Większość nie pojmuje nawet tych pierwszych, toteż nie ma sensu opisywać tego zagadnienia.
  • Klasy – bardziej zaawansowane struktury, w których wszystko jest domyślnie prywatne ( cokolwiek to znaczy )

Wykorzystanie

  • Torturowanie uczniów w liceach z poszerzonym programem informatyki.
  • Zabawy w hackera.
  • Imponowanie nieoświeconym osobom płci żeńskiej umiejętnością programowania (u mężczyzn).
  • Odstraszanie nieoświeconych osobników płci męskiej umiejętnością programowania (u kobiet).

nn:C++