Встречается на собеседованиях • сегодня
Какая модель управления памятью в Rust
В Rust используется модель управления памятью на основе системы владения (ownership), заимствования (borrowing) и времени жизни (lifetimes). Основные принципы:
- Владение – у каждого значения есть единственный владелец. При выходе владельца из области видимости память автоматически освобождается.
- Заимствование – можно временно передавать ссылки (
&Tили&mut T) с проверкой на этапе компиляции. - Время жизни – компилятор отслеживает, чтобы ссылки не переживали данные, на которые они указывают.
Пример:
rust
fn main() {
let s = String::from("hello"); // s - владелец
takes_ownership(s); // s перемещается в функцию
// println!("{}", s); // Ошибка! s больше не валидна
let x = 5;
makes_copy(x); // x копируется (i32 - Copy)
println!("{}", x); // OK
}
fn takes_ownership(some_string: String) {
println!("{}", some_string);
} // some_string выходит из области видимости, память освобождается
fn makes_copy(some_integer: i32) {
println!("{}", some_integer);
}Rust гарантирует безопасность памяти без сборщика мусора через строгие правила компиляции.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы