Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗rsSpGnSt 21 of 288 menu
◀ ▶

Обобщенная структура в Rust

Имя типа ставят и у структуры, чтобы поле хранило разные значения. В описании структуры после ее имени перечисляют параметры типа, а поля используют эти имена вместо одного фиксированного вида.

Оформим обертку вокруг одного значения:

struct Wrapper<T> { value: T, } fn main() { let num = Wrapper { value: 10 }; let text = Wrapper { value: String::from("go") }; println!("{} {}", num.value, text.value); }

Тот же шаблон работает, когда внутри лежит кортеж из двух чисел:

struct Wrapper<T> { value: T, } fn main() { let pair = Wrapper { value: (1, 2) }; println!("{} {}", pair.value.0, pair.value.1); }

Дано число:

let points: i32 = 40;

Объявите структуру с одним полем-параметром и положите points внутрь. Выведите поле.

Дана переменная:

let city = String::from("oslo");

Соберите обертку со строкой из city и выведите текст из поля.

Скажите, чем обобщенная структура отличается от двух отдельных структур под число и строку.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить