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;
}