(składnia)

Bartosz Szreder: Wyrównanie pamięci w C++: koniec (problemów) jest bliski!

Programista 1/2019 (80) kwiecień 2019 [okładka]

Kwestie związane z wyrównaniem pamięci (ang. memory alignment) potrafią mieć niebagatelny wpływ na wydajność kodu, a czasami także na jego stabilność. Jeszcze do niedawna standard języka C++ dość wstrzemięźliwie określał narzędzia, za pomocą których programista mógł specyfikować wyrównanie struktur danych. Lukę uzupełniały same kompilatory, dostarczając – z definicji nieprzenośnych – rozszerzeń i atrybutów. Przenośność można było uzyskać poprzez mozolne i ostrożne implementowanie własnych mechanizmów alokacji pamięci. Dopiero standard C++17 został wzbogacony o elementy umożliwiające przenośne specyfikowanie wymagań dotyczących wyrównania pamięci.