Introducere în Programarea C++

Jul 18, 2024

Curs/Clasă: Introducere în programarea C++

Motive pentru a învăța C++

  • Viteză: C++ este un limbaj de programare rapid.
  • Aplicații grafice: Folosit frecvent în aplicații grafice avansate (de exemplu, Adobe, software de editare video).
  • Sisteme încorporate: Adesea utilizat în sisteme încorporate.
  • Dezvoltarea jocurilor video: Larg utilizat în dezvoltarea jocurilor video.
  • Limbaj de nivel mediu: Se situează între limbajele de nivel înalt și cele de nivel scăzut.

Comparație cu alte limbaje

  • Limbaje de nivel înalt: Asemănătoare limbajelor umane (de exemplu, Python, Java, C#), dar mai lente.
  • Limbaje de nivel mediu: Cum ar fi C++ și C, mai dificil de scris, dar mai rapide.

Pregătiri și setări

  • Editor de text (IDE): VS Code, Code Blocks, Notepad.
  • Compiler: GCC (Windows/Linux), Clang (MacOS).

Instalare

  • Descărcați VS Code de pe code.visualstudio.com.
  • Instalați compilerul (GCC sau Clang) (instrucțiuni specificate pentru fiecare sistem de operare).

Primul program C++ – „Hello World”

  • Creați fișierul: hello_world.cpp
  • Schelet de cod:
    #include <iostream>
    int main() {
        std::cout << "I like pizza\n";
        std::cout << "It's really good" << std::endl;
        return 0;
    }
    
  • Explicație:
    • Include Directive: #include <iostream>
    • Funcția Main: Punctul de intrare în program.
    • Output: std::cout pentru ieșirea standard.
    • End of Line: \n sau std::endl pentru sfârșitul liniei.

Comentarii

  • Comentarii pe o singură linie: // Comentariu
  • Comentarii pe mai multe linii: /* Comentariu */

Variabile

  • Declarație & Atribuire
    int x = 5;
    int y;
    y = 6;
    int sum = x + y;
    
  • Tipuri de date: int, double, char, bool, string.
  • Exemplu de cod (cu input de la utilizator):
    std::string name;
    std::cout << "What's your name?";
    std::getline(std::cin, name);
    std::cout << "Hello " << name << std::endl;
    int age;
    std::cout << "What's your age?";
    std::cin >> age;
    std::cout << "You are " << age << " years old" << std::endl;
    

Variabile constante

  • Cuvânt cheie const
    const double PI = 3.14159;
    
  • Utilizare pentru valori neschimbabile

Namespace-uri

  • Creare și utilizare
    namespace first {
        int x = 1;
    }
    namespace second {
        int x = 2;
    }
    std::cout << first::x; // Output: 1
    std::cout << second::x; // Output: 2
    
  • Evitarea conflictelor de nume

Alte subiecte / Prezentare generală a subiectelor

  • typedefs și Type Alias (using): Simplificarea numelor tipurilor de date.
  • Operatori aritmetici: Adunare, scădere, înmulțire, împărțire, rest.
  • Ramificații: if, else if, else condiții.
  • Instrucțiuni switch: Alternativă la multe else if.
  • Bucle while și do-while: Repetarea blocurilor de cod în funcție de o condiție.
  • Bucla for: Buclă cu un număr specific de iterări.
  • Cuvintele cheie break și continue: Controlul buclelor.
  • Bucla nested (buclă suprapusă): Bucle în interiorul altor bucle.
  • Numere aleatorii: Generare cu rand(), utilizarea srand pentru initializare.
  • Funcții și Șabloane de Funcții: Posibilitatea reutilizării codului.
  • Structuri: Gruparea datelor în tipuri de date definite de utilizator.
  • Programare Orientată pe Obiecte (OOP): Clase și obiecte.
  • Constructori și Constructori Supraincarcați: Inițializarea automată a obiectelor.
  • Getteri și Setteri: Atribuirea și accesarea atributelor în siguranță.
  • Moștenire: Preluarea proprietăților și metodelor dintr-o clasă părinte.
  • Enum-uri: Seturi definite de valori constante.

Proiecte exemplu

  • Programe simple, cum ar fi calculatoare, recunoaștere de numere sau jocuri de ghicit.
  • Aplicarea conceptelor în proiecte tipice, cum ar fi simulatoare de bănci sau jocuri de Tic-Tac-Toe.

Exerciții practice

  • Postarea unui program simplu cu explicații și utilizarea conceptelor învățate în secțiunile de comentarii.

Încheierea notițelor

  • Ghid de studiu: Colectarea șabloanelor și exemplelor centralizate de cod.
  • Exercițiu și repetiție: Programarea regulată și revizuirea conceptelor.

Simbol/Rezumat

  • Simbol: 📝

Aceste notițe oferă o prezentare cuprinzătoare a bazelor programării în C++ și servesc ca un ghid valoros pentru studiu.