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

Практика на идентификатор типа в Rust

Даны фрагменты в одной программе:

use std::any::TypeId; let a = TypeId::of::<u8>(); let b = TypeId::of::<u8>(); let c = TypeId::of::<char>();

Запишите, какие из сравнений a == b и a == c дадут истину.

Дано число:

let num = 100;

Напишите функцию, которая принимает ссылку на общий тип и печатает это число, если внутри i32. Проверьте на литерале и на строке.

Дана строка:

let txt = "ok";

Функция, которая печатает только целое внутри общей ссылки, настроена на i32. Скажите, будет ли вывод для такого текста.

Даны типы:

struct Point { x: i32, y: i32, } struct Label { text: String, }

Сравните метки вида для Point и Label, выведите результат равенства.

Дано число:

let num = 3;

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

Дана строка:

let txt = "data";

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

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