Sobes.tech
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;
}