标签: rust
我想使用这个功能:
u8::from_str(src: &str) -> Result<u8, ParseIntError>
我似乎无法弄清楚使用它的语法。这就是我目前正在尝试的
use std::u8; match u8::from_str("89") { // Stuff... }
我收到以下错误:
error: unresolved name `u8::from_str`
使用原始模块中定义的函数的正确方法是什么?
提前感谢您的帮助!
答案 0 :(得分:5)
这里的诀窍是from_str实际上是特征FromStr的一部分。您需要使用该特征,然后指定要使用的实现:
from_str
FromStr
use std::str::FromStr; fn main() { match <u8 as FromStr>::from_str("89") { // Stuff... } }
但是,这个特定的概念有一个更符合人体工程学的选项:parse:
parse
fn main() { match "89".parse::<u8>() { // Stuff... } }
如果其他内容限制了足以推断它的类型,您可能会删除::<u8>。
::<u8>