В Rust ужасно сложно делать циклические ссылки, потому что он требует четкого владения памятью.
Но если очень хочется, то можно выкрутиться: например, хранить все в Vec и использовать индексы вместо указателей - это работает, но проверки в рантайме.
А если заморочиться с хитрыми дженериками и трейтами вроде for<'a>, то можно сделать индексы, которые проверяются ещё на этапе компиляции. В итоге получается свой мини-сборщик мусора с трейсингом, который безопасен и позволяет хранить циклические структуры. Правда, выглядит код при этом так, будто ты перемудрил с архитектурой, но зато без unsafe.
30.04.2026
Похожее
20.07.2026
А теперь переписываем на Zig
Окей, Bun переписывают с Zig на Rust. Но вы что думаете, только на Rust всё пере...
14.07.2026
Свой 3d редактор
Это первый эпизод серии туториалов по созданию простого 3D-редактора сцен на дви...
13.07.2026
Сокращатель ссылок на rust
Это вводная статья серии по бэкенд-разработке на Rust и Axum. Автор на приме...
10.07.2026
Gossamer
Новый пятничный язык программирования, вдохновленный Rust но с горутинами на M:N...