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

Практика на ассоциированные типы в Rust

Дана структура:

struct Shelf { items: Vec<String>, }

Объявите трейт с связанным типом и методом первого элемента, выполните его для Shelf со строками и выведите первую метку.

Дан следующий код:

struct Stack { nums: Vec<i32>, }

Сделайте трейт как у контейнера с первым числом, подставьте i32 и выведите первое значение из nums.

Даны типы:

trait Limit { const MAX: i32; } struct Door { id: i32, } struct Window { id: i32, }

Задайте MAX равным 3 для Door и 7 для Window, выведите оба лимита одной строкой.

Дан срез:

let vals = [2, 4, 6];

Обойдите срез готовым обходом, выведите элементы и запишите тип переменной цикла.

Дан следующий код:

struct Crate { weight: i32, }

Добавьте трейт с MAX: i32 и методом fits, который сравнивает вес с лимитом. Подставьте 50, проверьте weight и выведите да или нет.

Дан следующий код:

struct Pair { left: i32, right: i32, }

Объявите трейт со связанным типом, подставьте i32 в блоке выполнения, верните ссылку на left и выведите левое число.

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