/
spirzen
/
it-code-examples
Обзор
Документация
Войти
/
spirzen
/
it-code-examples
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
scripts/oop-practice-sources/rust/user-auth.rs
47 строк
1 KB
Spirzen
OOP
09 июн 2026, 20:58
09 июн 2026, 20:58
1dca232
Код
Авторство
О чём код?
struct User { username: String, password: String, logged_in: bool, } impl User { fn new(username: &str, password: &str) -> Self { Self { username: username.to_string(), password: password.to_string(), logged_in: false, } } fn login(&mut self, password: &str) { if password == self.password { self.logged_in = true; println!("Добро пожаловать, {}!", self.username); } else { println!("Ошибка: неверный пароль"); } } fn logout(&mut self) { self.logged_in = false; println!("{} вышел из системы", self.username); } fn post_message(&self, text: &str) { if !self.logged_in { println!("Сначала войдите в систему"); return; } println!("Сообщение опубликовано: {}", text); } } fn main() { let mut user = User::new("alex", "secret123"); user.post_message("Привет!"); user.login("wrong"); user.login("secret123"); user.post_message("Привет, мир!"); user.logout(); user.post_message("Ещё одно сообщение"); }