Dlaczego elementy na stosie muszą mieć rozmiar znany w czasie kompilacji?
Dec 03 2020
Rozumiem, dlaczego muszą mieć stały rozmiar , ale nie rozumiem, dlaczego ten rozmiar musi być znany w czasie kompilacji . Nawet C pozwala na stosowanie tablic o zmiennej długości na stosie. W czym pomaga to ograniczenie Rdzy?
Odpowiedzi
4 SebastianRedl Dec 03 2020 at 00:26
Nawet C pozwala na stosowanie tablic o zmiennej długości na stosie.
C może stosunkowo łatwo to obsługiwać ze względu na swoją trywialną semantykę.
Kiedy musisz wywołać destruktory / drop
, jest to o wiele mniej trywialne, więc Rust początkowo go nie obsługiwał, ponieważ jest to trudny do zaimplementowania i nie daje tak wielu korzyści.
Ostatecznie Rust będzie to obsługiwał (i robi to już w nocy ) dzięki RFC 1909 - nieskorygowanym rvalues .