Presidenten för C++ Alliance meddelade att arbetet fortgÄr med en specifikation som lÀgger till sÀker minneshantering i C++, liknande de möjligheter som implementerats i Rust. Projektet leds av Sean Baxter, skaparen av den experimentella C++-kompilatorn Circle, som utvecklar idéer för att öka sÀkerheten i C++-koden utan att anvÀnda skrÀpsamling. I projektet har Sean publicerat ett dokument som analyserar tillÀmpligheten av olika sÀkerhetsÄtgÀrder föreslagna i Rust, utvÀrderar möjligheten att implementera dem i C++ och ger förslag pÄ att lÀgga till sÀkerhetsÄtgÀrder i C++.
Initiativet lanseras som svar pÄ den ökande efterfrÄgan bland utvecklare efter sÀkrare programmeringsmetoder och syftar till att integrera nya funktioner i C++ som skyddar mot vanliga minnesfel, sÄsom att fÄ Ätkomst till redan frigjord minne och överskridande buffertgrÀnser. TillÀggen utvecklas som alternativ som gradvis kan överföra projekt till sÀkrare metoder, samtidigt som kompatibiliteten med befintlig 'osÀker' kod bevaras.
SÀker minneshantering föreslÄs uppnÄs genom mekanismer som implementeras vid kompilering och som inte medför de extra kostnader som Àr typiska för sprÄk som anvÀnder skrÀpsamlare. Bland de huvudsakliga föreslagna metoderna för att sÀkerstÀlla sÀkerhet nÀmns ÀgandespÄrning av objekt, kontroll av lÄntagande av variabler (borrow checker), anvÀndning av sÀkra kontexter (safe) samt skapande av grÀnssnitt för std2::send och std2::sync. Arbetet omfattar Àven skapandet av en sÀker version av standardbiblioteket, som erbjuder implementeringar av algoritmer och datatyper som möjliggör sÀker minneshantering.
KĂ€lla: opennet.ru
