Menu
Coddy logo textTech

Определение питомца

Часть раздела Object Oriented Programming путешествия по Rust на Coddy — урок 19 из 61.

challenge icon

Задание

Легко

Добро пожаловать в проект «Виртуальный питомец»! В течение следующих нескольких уроков вы создадите полноценную симуляцию питомца, которая объединит все, что вы узнали о структурах, методах, модулях и инкапсуляции.

Давайте начнем создавать вашего виртуального питомца! На этом первом этапе вы заложите основу, создав структуру Pet в отдельном модуле с правильной инкапсуляцией.

Вы организуете свой код в двух файлах:

  • pet.rs: Определите структуру Pet с тремя приватными полями: name (String), energy (u32) и hunger (u32). Реализуйте публичную ассоциированную функцию new, которая принимает имя и создает питомца с energy, установленной в 100, и hunger, установленным в 0. Также добавьте публичный геттер-метод name, который возвращает ссылку на имя питомца.
  • main.rs: Объявите модуль pet и импортируйте Pet в область видимости. Считайте имя из ввода, создайте нового питомца с этим именем и выведите приветственное сообщение.

Ваше приветственное сообщение должно соответствовать следующему формату:

Welcome, {name}!

Например, если на вход подается Buddy, вывод должен быть:

Welcome, Buddy!

Помните, что структура должна быть публичной, чтобы ее можно было использовать из main.rs, но поля должны оставаться приватными — доступными только через предоставляемые вами методы.

Попробуйте сами

mod pet;

use pet::Pet;

fn main() {
    let mut name = String::new();
    std::io::stdin().read_line(&mut name).expect("Failed to read line");
    let name = name.trim().to_string();

    // TODO: Создать нового питомца с заданным именем

    // TODO: Вывести приветственное сообщение, используя геттер имени питомца
    // Формат: "Welcome, {name}!"
}

Все уроки раздела Object Oriented Programming