Obsah

C++

C++ je víceparadigmatický jazyk, což znamená, že podporuje procedurální, objektově orientované i generické programování. Jeho mottem je: „Platíte jen za to, co skutečně používáte“ (Zero-overhead principle).

Hlavní vlastnosti

Evoluce jazyka (Moderní C++)

Staré C++ bylo často kritizováno pro svou nebezpečnost. Od verze C++11 se však jazyk zásadně změnil:

Kde se C++ používá?

Díky své rychlosti a kontrole dominuje C++ v těchto oblastech:

1. **Herní průmysl:** Unreal Engine a většina AAA her jsou napsány v C++.
2. **Operační systémy:** Jádra Windows a části macOS/[[Linux]]u.
3. **GUI Frameworky:** Například [[Qt]], který umožňuje tvorbu moderních aplikací.
4. **Finanční systémy:** High-frequency trading (HFT) platformy, kde záleží na mikrosekundách.
5. **Vědecké výpočty a AI:** Knihovny jako TensorFlow nebo OpenCV mají jádro v C++.

Příklad kódu: Třída a objekt

#include <iostream>
#include <string>

class Robot {
public:
    std::string jmeno;
    
    void pozdrav() {
        std::cout << "Ahoj, ja jsem " << jmeno << "!" << std::endl;
    }
};

int main() {
    Robot mujRobot;
    mujRobot.jmeno = "R2-D2";
    mujRobot.pozdrav();
    return 0;
}

Srovnání: C++ vs. Rust

Dnes je C++ často srovnáváno s novějším jazykem Rust:

Vlastnost C++ Rust
Bezpečnost paměti Na zodpovědnosti programátora. Zajištěna kompilátorem (Borrow Checker).
Rychlost Extrémní. Srovnatelná s C++.
Ekosystém Obrovský, 40+ let historie. Moderní, rychle rostoucí.
Učení Velmi strmá křivka učení. Náročné na pochopení pravidel vlastnictví.

Víte, že? Název C++ je vtipem programátorů. Operátor ++ v jazyce C znamená zvýšení hodnoty o 1. C++ je tedy „C zvýšené o jedna“ (další krok evoluce).

Související: Qt, Assembly Language, glibc, Linux