Junior — Middle
Jakie standardy języka C++, używałeś w swojej praktyce?
sobes.tech AI
Odpowiedź od AI
W mojej praktyce korzystałem ze standardów C++11 i C++14, które znacznie rozszerzyły możliwości języka w porównaniu do wcześniejszych wersji.
Główne funkcje, które stosowałem:
- Automatyczne wnioskowanie typu (auto) — upraszcza kod i poprawia czytelność.
- Wyrażenia lambda — do wygodnego tworzenia funkcji anonimowych, szczególnie w algorytmach STL.
- Inteligentne wskaźniki (std::unique_ptr, std::shared_ptr) — do bezpiecznego zarządzania pamięcią i unikania wycieków.
- Wyrażenia constexpr — do obliczeń na etapie kompilacji.
- Pętle oparte na zakresach (range-based for) — do wygodnej iteracji po kontenerach.
Przykład użycia inteligentnych wskaźników i lambdy:
#include <memory>
#include <vector>
#include <algorithm>
#include <iostream>
int main() {
std::vector<std::unique_ptr<int>> liczby;
liczby.push_back(std::make_unique<int>(10));
liczby.push_back(std::make_unique<int>(20));
std::for_each(liczby.begin(), liczby.end(), [](const std::unique_ptr<int>& num) {
std::cout << *num << std::endl;
});
return 0;
}
Użycie nowoczesnych standardów pomaga pisać kod bezpieczniejszy, wydajniejszy i łatwiejszy w utrzymaniu.