Junior — Middle
C++11 standarti paydo bo'lishi bilan C++ tilida qanday yaxshilanishlar amalga oshirildi?
sobes.tech AI
AIdan javob
C++11 standarti ko'plab yaxshilanishlar va yangi imkoniyatlarni kiritdi, jumladan:
- Avtomatik tur chiqarish (
auto) — o'zgaruvchilarni e'lon qilishni soddalashtiradi. - Aqlli ko'rsatkichlar (
std::unique_ptr,std::shared_ptr) — dinamik xotirani xavfsiz boshqarish uchun. - Lambda ifodalar — foydalanish joyida nomlanmagan funksiyalar yozishga imkon beradi.
- Doimiy ifodalar (
constexpr) — compile vaqtida hisoblashlar. - Oraliq asosidagi sikllar (
range-based for) — kolleksiyalardagi elementlarni osonroq aylanib chiqish. - Ko'p ipli dasturlash — standart iplar (
std::thread), mutexlar va boshqa sinxronizatsiya vositalari kiritildi. - Harakat semantikasini va rvalue-yo'nalishlarni — resurslarni o'tkazishni optimallashtirish.
- Standart o'lchamli turlar (
<cstdint>) — turlar ustida aniqroq nazorat.
Lambda ifodasi misoli:
#include <iostream>
#include <vector>
int main() {
std::vector<int> v = {1, 2, 3, 4, 5};
int yigindi = 0;
std::for_each(v.begin(), v.end(), [&yigindi](int n) { yigindi += n; });
std::cout << "Yig'indi: " << yigindi << std::endl;
return 0;
}