C++26

From Wikipedia, the free encyclopedia

Remove ads

C++26 on C++-ohjelmointikielen ISO-standardiversio, joka kehitetään C++23-standardin seuraajaksi.[1] Standardin on suunniteltu valmistuvan vuonna 2026.[2]

Ominaisuudet

Mukaan äänestettyjä kohtia ovat:[3]

  • hazardiosoittimet: rinnakkaiseen käsittelyyn tarkoitetut lukottomat osoittimet, joilla on yksi kirjoittaja ja useita lukijoita. Vain osoittimen omistaja voi asettaa sen arvon ja mikä tahansa määrä säikeitä voi lukea sen arvon.[4] Hazardiosoittimet ovat samankaltainen tekniikka kuin Read-Copy-Update (RCU); ensimmäinen on käytössä MongoDB:ssä ja jälkimmäinen on käytössä Linuxissa.[5][6] Myös Read-Copy-Update -mekanismin tukea on ehdotettu lisättäväksi C++26-standardiin.[7]
  • nimen pois jättäminen tietyissä tilanteissa[8]
  • määrittelemättömän käytöksen poistaminen tietyissä tilanteissa (P2621R3)[9]
  • alustakohtaiset tiedostokahvat[10]

Ehdotettuja kehityskohtia ovat:[11]

Edistettäviä, mutta ei varmaa valmistumisajankohtaa:[11]

  • contracts

Neljäksi avainkohdaksi mainitaan asynkronisen suorittamisen std::execution parannukset, tyyppi- ja muistiturvallisuuden parannukset, reflektio ja contracts.[17] Eräs ehdotettu muutos on, että alustamaton muuttuja ei enää ole määrittelemätöntä (P2795R5). Muutoksen myötä alustamaton luku voidaan määritellä virheeksi.[18] Lisäksi muut määrittelemättömät käytökset voidaan poistaa (P3436R1).[19]

Remove ads

Lähteet

Aiheesta muualla

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads