Wiemy już co nieco o języku C++, a więc możemy zaczynać, prawda?
Niezupełnie. Nie możemy jeszcze rozpocząć, ponieważ nie zainstalowaliśmy odpowiedniego oprogramowania! Aby programować w języku C++, trzeba zainstalować w komputerze specjalne programy. W tym rozdziale dowiesz się jakie programy będą Ci potrzebne, jak je zainstalować oraz jak ich używać.
Jeszcze tylko trochę cierpliwości. W następnym rozdziale w końcu rozpoczniemy właściwą pracę!
2.1. Narzędzia potrzebne do programowania
Jakich programów Twoim zdaniem potrzebuje programista?
Jeśli uważnie przeczytałeś poprzedni rozdział, to może już się domyślasz przynajmniej jednego z nich. Podstawowym narzędziem programisty jest kompilator, czyli wspominany już program tłumaczący kod źródłowy napisany przez programistę na kod binarny.
Istnieje kilka kompilatorów dla języka C++, ale wybór właściwego w naszym przypadku nie będzie trudny.
No dobrze, a co jest jeszcze potrzebne oprócz kompilatora? Oto lista niezbędnych programów:
- Edytor tekstu do pisania kodu źródłowego. Teoretycznie wystarczy do tego prosty Notatnik z systemu Windows albo edytor vi z Linuksa. Lepsze jednak są inteligentne programy z funkcją kolorowania składni kodu, która znacznie ułatwia orientację. Żaden programista o zdrowych zmysłach nie użyłby do programowania programu typu Notatnik.
- Kompilator do przekształcania (kompilowania) kodu źródłowego w kod binarny.
- Program diagnostyczny (debuger) do wyszukiwania błędów w kodzie (niestety nie wynaleziono jeszcze korektora, która by automatycznie poprawiał wszystkie błędy).
Jeśli jesteś odważny i masz żyłkę do sportów ekstremalnych, to możesz spróbować poradzić sobie bez debugera, ale jestem pewien, że szybko przejdzie Ci na to ochota i zaraz zaczniesz szukać jakiegoś dobrego programu tego typu.
W tej chwili masz dwie możliwości do wyboru:
- zdobyć każdy z tych trzech programów osobno. Jest to bardziej skomplikowane, ale tak też można. Zwłaszcza programiści pracujący w systemie Linux często korzystają z takiego rozwiązania. Nie będę jednak rozwijać tego tematu, ponieważ chcę pokazać jak najprostszy sposób na rozpoczęcie pracy.
- użyć programu zawierającego w sobie wszystkie te trzy funkcje, czyli mającego funkcję edytora tekstu, kompilatora i debugera. Takie kombajny nazywają się zintegrowanymi środowiskami programistycznymi (ang. integrated development environment — IDE).
Środowisk programistycznych jest tak dużo, że początkujący programista może mieć problem z wyborem jednego z nich. Dlatego nie jest ważny typ programu, lecz IDE, które wybierzesz.
2.1.1. Projekty
Kiedy wybierzesz już środowisko, musisz utworzyć w nim projekt. Projekt zawiera pliki z kodem źródłowym programu, takie jak .cpp czy .h, obrazy itd.
Zadaniem IDE jest utrzymywanie tych wszystkich plików w jednym łatwo dostępnym miejscu. Dzięki temu każdy plik jest przez cały czas w zasięgu ręki.
Dlatego właśnie, aby zacząć pracę nad nowym programem, trzeba najpierw utworzyć w swoim środowisku programistycznym nowy projekt.
2.2. Wybór środowiska programistycznego
Zapewne chciałbyś wiedzieć, jakie IDE są najbardziej znane. Osobiście lubię używać różnych i zazwyczaj wybieram te, które w danym momencie mi się podoba — wszystkie, o których będzie mowa są dostępne bezpłatnie.
- Moje ulubione IDE nazywa się Code::Blocks. Jest darmowe i dostępne w większości systemów operacyjnych. Można je polecić na początek, a jeśli Ci się spodoba, to możesz też korzystać z niego i później. Środowisko to jest dostępne w wersjach dla systemu Windows, Linux i Mac.
- Najbardziej znanym środowiskiem programistycznym dla systemu Windows jest produkt Microsoft Visual C++. Wersja podstawowa jest niestety płatna i bardzo droga, ale jest też bardzo dobra (mało różniąca się od podstawowej) wersja bezpłatna o nazwie Visual C++ Express. Oprogramowanie to oferuje komplet niezbędnych programiście funkcji, wśród których na uznanie zasługuje między innymi bardzo rozbudowany debuger. Dostępne tylko w systemie Windows.
- Użytkownicy systemu Mac OS X mogą używać środowiska Xcode, które jest dostarczane na płycie instalacyjnej wraz z samym systemem. Program ten jest bardzo ceniony przez programistów pracujących w systemie Mac. Dostępne jest tylko dla systemu Mac OS X.
Uwaga do użytkowników Linuksa
istnieje wiele środowisk programistycznych działających w tym systemie, ale wielu programistów lubiących eksperymentować mimo to wybiera trudniejsze rozwiązanie i woli z nich nie korzystać, lecz kompilować swoje programy „ręcznie”. W dalszej części kursu pokażę, jak to się robi. Na początek jednak będziemy korzystać ze zintegrowanego środowiska programistycznego. Aby móc powtórzyć opisane przeze mnie czynności w Linuksie, trzeba mieć zainstalować środowisko Code::Blocks. Możesz też wypróbować środowisko Eclipse dla programistów C i C++. Jest to potężne IDE, które wbrew powszechnemu mniemaniu wcale nie jest przeznaczone tylko dla programistów Javy.
Które IDE jest najlepsze?
Niezależnie od tego, które IDE wybierzesz, będziesz mógł w nim napisać każdy z programów opisanych w tym kursie. Oczywiście aplikacje różnią się między sobą liczbą funkcji i właściwościami użytkowymi, ale programy w nich tworzone są zawsze takie same. Wbrew temu, co się może wydawać wybór konkretnego IDE nie ma aż tak wielkiego znaczenia.
Narzędzie którym ja będę posługiwać się w dalszym tekście to Code::Blocks. Jeśli chcesz widzieć na swoim ekranie dokładnie to samo, co na prezentowanych zrzutach ekranu, dzięki czemu będzie Ci łatwiej zacząć, to również zainstaluj sobie Code::Blocks.
2.2.1. Code::Blocks (Windows, Mac OS, Linux)
Środowisko Code::Blocks to oprogramowanie otwarte i bezpłatne, które jest dostępne w systemach Windows, Mac i Linux. Aktualnie istnieje tylko w wersji angielskiej, ale nie zniechęcaj się tym, ponieważ z opcji w menu i tak nie będziesz zbyt często korzystać.
Poza tym pisząc programy i tak często będziesz zmuszony czytać teksty po angielsku, np. rozmaite dokumentacje. Masz zatem dodatkową motywację, aby poćwiczyć też trochę ten język.
2.2.1.1. Pobieranie i instalacja środowiska Code::Blocks
Wejdź na stronę pobierania programu http://www.codeblocks.org/downloads/26.
- Jeśli korzystasz z systemu Windows, kliknij pozycję Windows. Wybierz wersję, w której nazwie znajduje się słowo mingw (np. codeblocks-10.05mingw-setup.exe). Inne nie zawierają kompilatora, bez którego niewiele da się zrobić.
- Jeśli korzystasz z systemu Linux, najlepszym sposobem jest instalacja środowiska poprzez pakiety (w Ubuntu na przykład trzeba użyć polecenia
apt-get
). Ponadto trzeba osobno zainstalować kompilator będący w pakiecie o nazwie build-essential. Podsumowując, aby zainstalować Code::Blocks wraz z kompilatorem, należy posłużyć się poniższym poleceniem:sudo apt-get install build-essential codeblocks
- Jeśli natomiast korzystasz z systemu Mac, wybierz po prostu najnowszą dostępną wersję programu (np. codeblocks-10.05-p2-mac.zip).
Jeśli korzystasz z systemu Windows, to koniecznie wybierz do ściągnięcia plik instalacyjny zawierający w nazwie słowo mingw. Jeśli zainstalujesz niewłaściwą wersję środowiska, nie będziesz mógł skompilować swoich programów!
Instalacja jest bardzo łatwa i szybka. Wszystkie opcje pozostaw przy ustawieniach domyślnych i po zakończeniu instalacji uruchom program (rysunek 2.2).
Okno programu podzielone jest na cztery części, które na przedstawionym zrzucie zostały ponumerowane:
- Pasek narzędzi: zawiera wiele przycisków, ale regularnie będziesz korzystać tylko z kilku z nich. Wrócimy jeszcze do tego później.
- Lista plików projektu: lista wszystkich plików źródłowych programu znajduje się po lewej stronie środowiska. Zwróć uwagę, że na tym zrzucie ekranu nie ma jeszcze utworzonego żadnego projektu i dlatego lista ta jest pusta. Wkrótce ją zapełnisz swoimi plikami.
- Główny obszar roboczy: miejsce, w którym wpisuje się kod źródłowy.
- Obszar powiadomień: jest to miejsce, w którym wyświetlane są informacje o błędach kompilacji, jeśli kod źródłowy programu zawiera jakieś usterki. To zdarza się bardzo często!
Teraz zajmiemy się szczegółowo paskiem narzędzi z przyciskami okna głównego. Znajdują się na nim następujące przyciski (w kolejności wymieniania): Build (skompiluj), Run (wykonaj), Build and run (skompiluj i wykonaj) oraz Rebuild (ponownie skompiluj). Tych przycisków będziesz używać bardzo często.
- Build: powoduje wysłanie wszystkich plików należących do projektu do kompilatora w celu utworzenia pliku wykonywalnego. Jeśli wystąpią jakieś błędy (a jest duże prawdopodobieństwo, że tak będzie), plik ten nie zostanie utworzony, a program wyświetli informacje o tych błędach w obszarze na dole.
- Run: ten przycisk powoduje uruchomienie ostatnio skompilowanego pliku. Dzięki temu można przetestować swoją aplikację i sprawdzić, czy działa prawidłowo. A zatem każdy program należy skompilować, a następnie uruchomić, aby sprawdzić czy działa prawidłowo. Można też użyć trzeciego przycisku.
- Build and compile: nietrudno się domyślić, że przycisk ten działa jak kombinacja dwóch poprzednich. Będziesz go używać najczęściej ze wszystkich. Należy zauważyć, że jeśli wystąpią jakieś błędy podczas kompilacji, program nie zostanie uruchomiony. Zamiast tego zostanie wyświetlona długa lista błędów do poprawienia.
- Rebuild: kliknięcie przycisku Kompiluj nie powoduje ponownego skompilowania przez Code::Blocks wszystkich zmodyfikowanych i niezmodyfikowanych plików. Lecz czasami trzeba dokonać ponownej kompilacji wszystkich zasobów. Kiedy jest to potrzebne, dowiesz się w dalszej części kursu. Także sposób działania funkcji kompilacji zostanie szerzej omówiony w jednym z dalszych rozdziałów. Na razie wystarczy nam minimum wiedzy, żeby nic nie pomieszać.
Na razie przycisku tego nie będziesz potrzebować.
Warto zapamiętać skróty klawiszowe odpowiadające tym omówionym przyciskom, ponieważ będą one naprawdę bardzo często używane. W szczególności dobrze jest wiedzieć, że funkcję kompilacji i uruchomienia programu włącza klawisz F9.
2.2.1.2. Tworzenie nowego projektu
Utworzenie nowego projektu jest bardzo łatwe. Kliknij kolejno File/New/Project i w oknie, które zostanie wyświetlone wybierz opcję Console application (aplikacja konsolowa) — rysunek 2.3.
Jak widać, środowisko Code::Blocks pozwala na tworzenie wielu różnych rodzajów programów, z użyciem rozmaitych bibliotek, jak np. SDL (2D), OpenGL (3D), Qt i wxWidgets (okna) itd. Na razie ikony te stanowią jednak tylko ozdobę okna, ponieważ w komputerze nie masz jeszcze zainstalowanych tych bibliotek, a więc nie możesz z nich korzystać. Bliżej tym różnym typom aplikacji przyjrzymy się nieco później. Na razie zadowolimy się jednak aplikacjami konsolowymi, a na bardziej wyszukane programy przyjdzie jeszcze pora.
Kliknij przycisk Go, aby uruchomić kreatora projektu.
W następnym oknie kliknij przycisk Next. W kolejnym zostaniesz poproszony o podanie informacji, czy zamierzasz pisać kod w języku C, czy C++. Wybierz opcję C++ — rysunek 2.4.
W następnym oknie należy podać nazwę projektu oraz folder, w którym mają być zapisywane jego pliki — rysunek 2.5.
W końcu w ostatnim oknie wybiera się sposób kompilacji programu. Można pozostawić ustawienia standardowe, ponieważ nie będą one na razie miały wpływu na naszą pracę (przypilnuj tylko aby albo opcja Debug albo Release była zaznaczona) — rysunek 2.6.
Kliknij przycisk Finish i gotowe! Code::Blocks utworzy projekt z podstawowym kodem wewnątrz.
W widocznej po lewej stronie okienku Projects kliknij znak +, aby rozwinąć listę plików projektu. Powinien się na niej znajdować przynajmniej plik o nazwie main.cpp, który można otworzyć dwukrotnym kliknięciem.
2.2.2. Visual C++ (tylko Windows)
Dwie uwagi na temat środowiska Visual C++:
- Jest to produkt firmy Microsoft
- W wersji podstawowej program ten jest płatny, ale Microsoft udostępnia też wersję darmową o nazwie Visual C++ Express
Poniżej znajduje się okno wersji bezpłatnej, czyli programu Visual C++ Express — rysunek 2.7.
Czym różni się Visual C++ Express od podstawowej wersji?
Nie zawiera edytora zasobów (pozwalającego projektować obrazy, ikony, okna itp.). Ale to dla nas nie problem, bo i tak w tym kursie nie będziemy tego potrzebować. Nie jest to coś, bez czego nie można by było żyć, a wręcz przeciwnie.
Instrukcje dotyczące instalacji tego programu znajdują się na jego stronie internetowej. Dostępnych jest kilka wersji językowych, ale niestety nie ma wśród nich języka polskiego.
Visual C++ Express to program całkowicie darmowy, a więc pozbawiony wszelkich ograniczeń czasowych czy innych.
2.2.2.1. Instalacja
Proces instalacji jest prosty i szybki. Specjalny instalator automatycznie pobierze najnowszą wersję programu i ją zainstaluje. Najlepiej pozostawić wszystkie opcje z domyślnymi ustawieniami.
Na zakończenie zostanie wyświetlona informacja, że w ciągu 30 dni trzeba dokonać rejestracji. Nie przejmuj się tym, jest to darmowe i nie zabiera dużo czasu, ale nie da się tego uniknąć. Kliknij podany odnośnik, aby przejść na strony Microsoftu. Zaloguj się korzystając ze swojego identyfikatora Windows Live (taki sam, jak do poczty Hotmail i serwisu MSN) albo utwórz sobie takie konto, jeśli go jeszcze nie masz, a następnie wypełnij prosty formularz.
Później otrzymasz klucz rejestracyjny. Skopiuj go, przejdź do menu Help, kliknij pozycję Register product (zarejestruj produkt), a następnie wklej klucz w polu Registration key (klucz rejestracyjny).
2.2.2.2. Tworzenie projektu
Aby utworzyć projekt, kliknij kolejno File/New/Project i w oknie, które zostanie wyświetlone, po lewej stronie kliknij opcję Win32, a następnie w oknie po prawej stronie wybierz typ projektu Win32 Console Application (aplikacja konsolowa Win32). Na dole tego okna wpisz nazwę projektu, np. test1 — rysunek 2.8.
Kliknij przycisk OK, w wyniku czego zostanie wyświetlone kolejne okno — rysunek 2.9.
W oknie tym kliknij po lewej stronie opcję Application Settings (ustawienia aplikacji) — rysunek 2.10:
Zwróć uwagę, że musi być zaznaczona opcja Empty project (pusty projekt), tak jak pokazano na powyższym zrzucie ekranu. Następnie kliknij przycisk Finish.
2.2.2.3. Dodawanie nowego pliku źródłowego
Masz już gotowy do pracy pusty projekt. W okienku po lewej stronie kliknij prawym przyciskiem myszy folder Source files (pliki źródłowe), a następnie otwórz kolejno menu Add/New item — rysunek 2.11.
Zostanie wyświetlone nowe okno. W oknie tym kliknij pozycję C++ File (.cpp) (plik C++), aby dodać do projektu nowy plik i w polu Name wpisz dla niego nazwę main.cpp — rysunek 2.12.
Kliknij przycisk Add (dodaj) i to wszystko, możesz zacząć pisać kod!
2.2.2.4. Okno główne programu Visual C++ Express
Spójrz na okno główne programu pokazane na rysunku 2.13:
Krótko omówimy poszczególne części tego okna:
- Pasek narzędzi zawiera standardowe elementy: otwórz, zapisz, zapisz wszystkie, wytnij, skopiuj, skopiuj wszystkie itd. Jak widać standardowo nie ma przycisku kompilacji. Można go dodać klikając pasek prawym przyciskiem myszy i z listy, która zostanie wyświetlona wybierając pozycje Debug i Build. Każdy z przycisków znajdujących się na tych paskach narzędzi ma swój odpowiednik w menu o nazwie Debug lub Build. Kliknięcie przycisku Build powoduje utworzenie pliku wykonywalnego. Natomiast naciśnięcie przycisku Debug powoduje wyświetlenie propozycji kompilacji przed rozpoczęciem debugowania. Jeśli wolisz posługiwać się samą klawiaturą, to kompilację uruchamia klawisz F7, a do uruchamiania programów służy klawisz F5.
- Jest to bardzo ważne okienko, w którym znajduje się wykaz wszystkich plików należących do projektu. Jeśli nie ma wyświetlonych żadnych plików, to kliknij znajdującą się obok napisu Solution Explorer strzałkę. Gdy to zrobisz, zauważysz, że program utworzył już kilka plików (źródłowych i zasobów). Szerzej na temat poszczególnych typów plików projektu opowiem nieco później.
- Główna część okna, w której można wpisywać kod źródłowy programów.
- Jest to tzw. „strefa śmierci”, ponieważ to w tym miejscu wyświetlane są informacje o błędach kompilacji. Także na dole wyświetlane są dane procesu debugowania. Wspominałem już, że bardzo podoba mi się program diagnostyczny wbudowany w Visual C++ i chyba nie jestem w tym odosobniony.
To wszystko, jeśli chodzi o konfigurację środowiska Visual C++. Jeśli masz ochotę, to możesz zajrzeć do opcji (Tools/Options), ale jest tam tyle rozmaitych pól wyboru, że trudno się wśród nich połapać.
2.2.3. Xcode (tylko Mac OS)
W systemie Mac dostępnych jest kilka różnych środowisk programistycznych, choćby na przykład Code::Blocks, ale tutaj chciałbym Ci pokazać najpopularniejsze z nich wszystkich, czyli Xcode.
Dziękuję prs513rosewood za zrzuty ekranu i pomoc w napisaniu tej części rozdziału.
2.2.3.1. Xcode, gdzie jesteś
Nie wszyscy użytkownicy systemu Mac OS są programistami. Firma Apple dobrze o tym wie i dlatego środowisko Xcode nie jest standardowo instalowane w tym systemie. Jednak jeśli ktoś chce pisać programy, to również nie napotka w tym żadnych trudności, ponieważ Xcode jest dostępne na płycie instalacyjnej Mac OS-a.
Aby zainstalować Xcode, włóż płytę instalacyjną do napędu i otwórz pakiet Xcode Tools znajdujący się w katalogu z dodatkami. Zostanie uruchomiony program instalacyjny (rysunek 2.14).
Ponadto polecam zapisanie sobie w zakładkach adresu do serwisu dla programistów Apple, ponieważ można w nim znaleźć mnóstwo cennych zasobów związanych z programowaniem w systemie Mac. Między innymi do pobrania są różne dodatkowe programy.
Warto też zapisać się do ADC (ang. Apple Developer Connection), czyli bezpłatnego programu informacyjnego, za pośrednictwem którego rozsyłane są wiadomości o nowościach.
2.2.3.2. Uruchamianie
Po zakończeniu instalacji program Xcode będzie można znaleźć w katalogu Developer/Applications (rysunek 2.15):
2.2.3.3. Tworzenie nowego projektu
Aby utworzyć nowy projekt, należy kolejno kliknąć File/New/New Project. W oknie, które zostanie wyświetlone wybierz typ aplikacji Command Line Tool (rysunek 2.16).
Kliknij przycisk Next i w następnym oknie w polu Product Name wpisz nazwę swojego projektu, a z listy rozwijanej Type wybierz pozycję C++ (rysunek 2.17).
Po zakończeniu tych czynności zostanie wyświetlone główne okno programu (rysunek 2.18).
Widoczny po lewej stronie plik z ciemną ikonką o nazwie test to plik wykonywalny programu. Natomiast w pliku o nazwie test.l znajduje się dokumentacja, a w pliku main.cpp — kod źródłowy programu, który można otworzyć pojedynczym kliknięciem. Aby dodać nowy plik do projektu, można otworzyć menu File i kliknąć pozycję New/New File.
2.2.3.4. Kompilacja
Aby skompilować program, należy kliknąć znajdujący się w lewym górnym rogu okna programu przycisk Run. Spowoduje to skompilowanie i uruchomienie napisanej aplikacji. Wynik jej działania zostanie wyświetlony na dole okna głównego, jak pokazano na rysunku 2.19.
Mamy już wszystko, czego nam potrzeba do pisania programów w języku C++. Zatem do dzieła!
Otwierając wcześniej utworzoną „aplikacje” poza Code::Blocks od razu mi się zamyka mimo iż na końcu dałem komende: „return 0;” Jeśli to istotne to jest to co zrobiłem:
#include
using namespace std;
int main()
{
int wiekUzytkownika(16);
string nazwiskoUzytkownika(„Adam Jakistam”);
cout << "Twój wiek: ";
cout << wiekUzytkownika<<endl;
cout << "Nazywasz sie: " <<nazwiskoUzytkownika<< ". I to obchodzi 0 osob"<<endl;
return 0;
}
#include
using namespace std;
int main()
{
int wiekUzytkownika = 16;
cout <<"masz tyle lat" << wiekUzytkownika<<endl;
cin.get();
cin.get();
return 0;
}
getch();
wklej to między ostatnim cout i return 0;