Junior — Middle
Welche Verbesserungen wurden in die Programmiersprache C++ mit dem Erscheinen des Standards C++11 eingeführt?
sobes.tech KI
Antwort von AI
Der C++11-Standard brachte viele Verbesserungen und neue Funktionen, darunter:
- Automatische Typableitung (
auto) — vereinfacht die Deklaration von Variablen. - Intelligente Zeiger (
std::unique_ptr,std::shared_ptr) — für eine sichere Verwaltung des dynamischen Speichers. - Lambda-Ausdrücke — ermöglichen das Schreiben anonymer Funktionen direkt am Einsatzort.
- Konstante Ausdrücke (
constexpr) — Berechnungen zur Compile-Zeit. - Range-basierte Schleifen (
range-based for) — vereinfachen das Durchlaufen von Elementen in Sammlungen. - Multithread-Programmierung — Einführung von Standard-Threads (
std::thread), Mutexen und anderen Synchronisationsmitteln. - Semantik des Bewegens und rvalue-Referenzen — Optimierung bei der Ressourcenübertragung.
- Standardisierte Typen fester Größe (
<cstdint>) — für eine genauere Kontrolle der Typen.
Beispiel für einen Lambda-Ausdruck:
#include <iostream>
#include <vector>
int main() {
std::vector<int> v = {1, 2, 3, 4, 5};
int sum = 0;
std::for_each(v.begin(), v.end(), [&sum](int n) { sum += n; });
std::cout << "Summe: " << sum << std::endl;
return 0;
}