Доступ к полям
Доступ к полям структуры в Rust осуществляется с помощью
точечной нотации. Через точку указывается имя поля,
значение которого нужно получить или изменить. Доступ
работает как для чтения, так и для записи, если переменная
объявлена как изменяемая с помощью ключевого слова mut.
Синтаксис
instance.field
instance.field = value
Пример
Давайте создадим структуру Point и получим
значения её полей:
struct Point
{
x: i32,
y: i32,
}
fn main()
{
let p = Point { x: 1, y: 2 };
println!("{}", p.x);
println!("{}", p.y);
}
Результат выполнения кода:
1
2
Пример
Давайте изменим значение поля структуры через точечную нотацию:
struct Point
{
x: i32,
y: i32,
}
fn main()
{
let mut p = Point { x: 1, y: 2 };
p.x = 10;
println!("{}", p.x);
}
Результат выполнения кода:
10
Пример
Давайте получим значение поля вложенной структуры:
struct Inner
{
value: i32,
}
struct Outer
{
inner: Inner,
}
fn main()
{
let o = Outer
{
inner: Inner { value: 5 },
};
println!("{}", o.inner.value);
}
Результат выполнения кода:
5
Смотрите также
-
ключевое слово
struct,
которое создаёт новую структуру -
тема
поля структуры,
которая описывает объявление полей -
тема
доступ к полям,
которая описывает работу с полями структур -
тема
синтаксис обновления,
который позволяет создавать структуру на основе другой