Sobes.tech
Junior — Middle

Kādas uzlabojumi tika ieviesti C++ valodā ar C++11 standarta?

sobes.tech AI

Atbilde no AI

C++11 standarts ieviesa daudz uzlabojumu un jaunu iespēju, tostarp:

  • Automātiska tipu izvilkšana (auto) — vienkāršo mainīgo deklarāciju.
  • Gudrie rādītāji (std::unique_ptr, std::shared_ptr) — drošai dinamiski piešķirtas atmiņas pārvaldībai.
  • Lambda izteiksmes — ļauj rakstīt anonīmas funkcijas tieši lietošanas vietā.
  • Konstantas izteiksmes (constexpr) — aprēķini kompilācijas laikā.
  • Diapazona balstīti cikli (range-based for) — vienkāršo kolekciju elementu iterāciju.
  • Daudzšaru programmēšana — ieviesa standarta pavedienus (std::thread), mutexus un citus sinhronizācijas līdzekļus.
  • Pārvietošanas semantika un rvalue atsauces — optimizē resursu nodošanu.
  • Standarta fiksēta izmēra tipi (<cstdint>) — precīzākai tipu kontrolei.

Lambda izteiksmes piemērs:

#include <iostream>
#include <vector>

int main() {
    std::vector<int> v = {1, 2, 3, 4, 5};
    int summa = 0;
    std::for_each(v.begin(), v.end(), [&summa](int n) { summa += n; });
    std::cout << "Summa: " << summa << std::endl;
    return 0;
}