0
Как получить значение подстановочного знака в заявлении match
?Получение значения подстановочного знака
Например:
let a = 1i;
let b = 2i;
match a.cmp(&b) {
Greater => println!("is greater"),
_ => println!("is {}", _) // error: unexpected token: `_`
}
Я надеюсь на что-то более чистого, чем хранение enum
, совпадающим в переменной:
let a = 1i;
let b = 2i;
let ord = a.cmp(&b);
match ord {
Greater => println!("is greater"),
_ => println!("is {}", ord)
}
Спасибо, не знал, что какой-либо идентификатор может использоваться в качестве подстановочного знака. – August
Да, но есть уловка: если вы попытаетесь сопоставить вариант «enum», который вы не импортировали с помощью 'use', вы можете получить [ошибки о недоступных шаблонах] (http://is.gd/ Dep83r). Здесь 'Greater' импортируется автоматически, потому что это часть прелюдии. –