Uživatelské nástroje

Nástroje pro tento web


it:lang:cpp

Programování v C++

C++ je výkonný, kompilovaný, víceparadigmatický programovací jazyk, který v roce 1979 vyvinul Bjarne Stroustrup jako rozšíření jazyka C o vlastnosti objektově orientovaného programování. Patří do třetí generace jazyků a dodnes je standardem pro aplikace vyžadující maximální výkon a efektivitu.

1. Klíčové vlastnosti C++

  • Výkon a efektivita: C++ umožňuje přímou manipulaci s pamětí a hardwarem, což z něj dělá volbu číslo jedna pro operační systémy a herní enginy.
  • Objektově orientované programování (OOP): Podporuje třídy, dědičnost a polymorfismus, což pomáhá organizovat složitý kód.
  • Standardní knihovna šablon (STL): Bohatá sada připravených datových struktur (vektory, seznamy, mapy) a algoritmů.
  • Víceparadigmatičnost: Umožňuje psát kód procedurální, objektový i generický (pomocí šablon).

2. Správa paměti: Unikátnost C++

Na rozdíl od jazyků jako Java nebo Python, C++ standardně nemá Garbage Collector (automatický čistič paměti).

  • Manuální správa: Programátor sám rozhoduje, kdy paměť alokuje (`new`) a kdy ji uvolní (`delete`).
  • Ukazatele (Pointers): Proměnné, které uchovávají přímo adresu v RAM.
  • Moderní C++ (C++11 a novější): Zavedlo tzv. chytré ukazatele (`std::unique_ptr`, `std::shared_ptr`), které minimalizují riziko úniku paměti (memory leaks).

3. Proces překladu (Kompilace)

C++ je čistě kompilovaný jazyk. Proces převodu zdrojového kódu do spustitelného programu má několik fází:

1. **Preprocesor:** Zpracuje direktivy (např. `#include`).
2. **Kompilátor:** Přeloží kód do jazyka symbolických adres (Assembly).
3. **Asembler:** Vytvoří objektový soubor (strojový kód).
4. **Linker:** Spojí objektové soubory a knihovny do výsledného souboru (`.exe`, `.out`).

4. Oblasti využití

Oblast Příklad
Operační systémy Windows, macOS (jádra jsou psána v C/C++).
Hry a enginy Unreal Engine, hry jako Witcher 3 nebo Counter-Strike.
Prohlížeče Google Chrome, Firefox (jádra pro vykreslování).
Finance Vysokofrekvenční obchodování (HFT), kde rozhodují mikrosekundy.
Výpočty a AI Knihovny jako TensorFlow nebo platforma CUDA.

5. Ukázka kódu

Klasický program „Hello World“ s ukázkou třídy:

#include <iostream>
#include <string>
 
class Zdravic {
public:
    void pozdrav(std::string jmeno) {
        std::cout << "Ahoj, " << jmeno << "!" << std::endl;
    }
};
 
int main() {
    Zdravic mujObjekt;
    mujObjekt.pozdrav("WikiProgramatore");
    return 0;
}

Související články:

Tagy: programming cpp language software_development hardware_control

it/lang/cpp.txt · Poslední úprava: autor: admin