Compilatoare

Instrumentele esențiale necesare pentru a urmări aceste tutoriale sunt un calculator și un toolchain compilator capabil să compileze cod C++ și de a construi programe ce pot rula pe el.

C++ este un limbaj care a evoluat mult de-a lungul anilor, iar aceste tutoriale explică multe caracteristici adăugate recent. De aceea, în scopul urmăririi în mod corespunzător a tutorialelor, este nevoie de un compilator recent. Acesta susține (chiar dacă numai parțial) caracteristicile introduse de standardul 2011.

Mulți furnizori de compilatoare sprijină noile caracteristici la diferite grade. A se vedea partea de jos a acestei pagini pentru unele compilatoare care sunt cunoscute a sprijini caracteristicile necesare. Unele dintre ele sunt gratuite!

Dacă, din anumite motive, aveți nevoie de un compilator mai vechi, atunci puteți accesa o versiune mai veche a acestor tutoriale aici (versiune ce nu mai este actualizată).

Ce este un compilator?

Calculatoarele înțeleg numai un singur limbaj care este format din seturi de instrucțiuni realizate ca succesiuni de unu și zero. Acest limbaj înțeles de calculator se numește în mod corespunzător - cod mașină.

O singură instrucțiune pentru un calculator ar putea arăta astfel:

0000010011110

Un program în cod mașină care să permită unui utilizator introducerea a două numere, adaugă cele două numere și afișează totalul ar putea include aceste instrucțiuni:

0000010011110
0000111110100
0001010011110
0001111010100
0010010111111
0010100000000

După cum vă puteți imagina, programarea unui calculator direct în cod mașină, folosind numai unu și zero este foarte obositoare și predispusă la erori. Pentru a face mai ușoară programarea, au fost dezvoltate limbaje de nivel înalt. Programele de nivel înalt fac, de asemenea, mai ușoară pentru programatori inspectarea și înțelegerea reciprocă a programelor.

Aceasta este o secvență de cod scris în C++ care realizează exact același scop:

1
2
3
4
5
6
7
int a, b, suma;
     
cin >> a;
cin >> b;
             
suma = a + b;
cout << suma << endl;

Chiar dacă nu puteti înțelege în întregime codul de mai sus, ar trebui să puteți aprecia că programarea în limbajul C++ va fi mult mai ușoară decât în cod mașină.

Pentru că un computer poate înțelege doar cod mașină și oamenii doresc să scrie în limbaje de nivel înalt, limbajele de nivel înalt trebuie să fie rescrise (traduse) în cod mașină la un moment dat. Acest lucru se face prin programe speciale numite compilatoare, interpretoare sau asambloare, care sunt construite în diferite limbaje de programare.

C++ este proiectat pentru a fi un limbaj compilat, ceea ce înseamnă că acesta este, în general, tradus în cod mașină pentru a putea fi înțeles de către sistem, ceea ce face ca programul generat să fie extrem de eficient. Pentru aceasta este nevoie de un set de instrumente, cunoscut sub numele de toolchain de dezvoltare, al cărui miez (nucleu) este format dintr-un compilator și linker-ele sale.

Programe consolă

Programele de tip consolă sunt programe care folosesc text pentru a comunica cu utilizatorul și mediul înconjurător, cum ar fi imprimarea unui text pe ecran sau introducerea de date de la tastatură.

Interacțiunea cu programele de tip consolă este ușoară și, în general, are un comportament previzibil, care este identic pe toate platformele. Astfel de programe sunt, de asemenea, ușor de implementat și, prin urmare, sunt foarte utile în învățarea elementelor de bază ale unui limbaj de programare: exemplele din acest tutorial sunt toate programe de tip consolă.

Modalitatea de compilare a programelor de tip consolă depinde de instrumentul special (toolchain) pe care îl utilizați.

Cel mai simplu mod pentru începători de a compila programe C++ este folosirea unui mediu de dezvoltare integrat (IDE). Un IDE integrează, în general, mai multe instrumente de dezvoltare, inclusiv un editor de text și instrumente pentru compilarea programelor.

Aici aveți instrucțiuni despre cum să compilați și rulați programe consolă care utilizează interfețe diferite de medii de dezvoltare integrate (IDE gratuit).

IDEPlatformaPrograme consolă
Code::blocksWindows/Linux/MacOSCompilarea programelor consola cu Code::blocks
Visual Studio ExpressWindowsCompilarea programelor consolă cu VS Express 2013
Dev-C++WindowsCompilarea programelor consolă cu Dev-C++

Dacă aveți un mediu Linux sau Mac cu facilități pentru dezvoltare, ar trebui să puteți compila oricare dintre exemple direct de la un terminal, doar prin includerea steagurilor (flags) C++ 11 în comanda pentru compilator:

CompilerPlatformaComanda
GCCLinux, și altele...g++ -std=c++0x exemplu.cpp -o program_exemplu
ClangOS X, și altele...clang++ -std=c++11 -stdlib=libc++ exemplu.cpp -o program_exemplu
Index
Index