Junior — Middle
Welke verbeteringen zijn aangebracht in de programmeertaal C++ met de komst van de C++11-standaard?
sobes.tech AI
Antwoord van AI
De C++11-standaard bracht veel verbeteringen en nieuwe functies, waaronder:
- Automatische type-afleiding (
auto) — vereenvoudigt het declareren van variabelen. - Slimme pointers (
std::unique_ptr,std::shared_ptr) — voor veilige beheer van dynamisch geheugen. - Lambda-uitdrukkingen — stellen je in staat anonieme functies direct op de gebruikslocatie te schrijven.
- Constante uitdrukkingen (
constexpr) — berekeningen tijdens compilatie. - Range-based for-loops — vereenvoudigen het itereren over collectie-elementen.
- Multithreading-programmering — introductie van standaard threads (
std::thread), mutexen en andere synchronisatiehulpmiddelen. - Semantiek van verplaatsing en rvalue-referenties — optimalisatie van resource-overdracht.
- Standaard vaste grootte typen (
<cstdint>) — voor nauwkeurigere controle over typen.
Voorbeeld van een lambda-uitdrukking:
#include <iostream>
#include <vector>
int main() {
std::vector<int> v = {1, 2, 3, 4, 5};
int som = 0;
std::for_each(v.begin(), v.end(), [&som](int n) { som += n; });
std::cout << "Som: " << som << std::endl;
return 0;
}