Rust 没有方法解析字符串
我正试着通过以下方法来学习生锈 但是,我收到了一个关于Rust 没有方法解析字符串,rust,Rust,我正试着通过以下方法来学习生锈 但是,我收到了一个关于字符串未实现解析方法的错误。我搜索了文档,找到了方法 为了让我安心,我想知道指南是否有问题(很可能是1.0之前的语言),或者我是否做错了什么 锈蚀版本: rustc 0.13.0-每晚(34D68009 2014-12-22 00:12:47+0000) 我已经复制了下面的代码和错误代码 use std::io; use std::rand; fn main() { println!("Guess the number!");
字符串
未实现解析
方法的错误。我搜索了文档,找到了方法
为了让我安心,我想知道指南是否有问题(很可能是1.0之前的语言),或者我是否做错了什么
锈蚀版本:
rustc 0.13.0-每晚(34D68009 2014-12-22 00:12:47+0000)
我已经复制了下面的代码和错误代码
use std::io;
use std::rand;
fn main() {
println!("Guess the number!");
let secret_number = (rand::random::<uint>() % 100u) + 1u;
println!("The secret number is: {}", secret_number);
println!("Please input your guess.");
let input = io::stdin().read_line()
.ok()
.expect("Failed to read line");
let input_num: Option<uint> = input.parse();
let num = match input_num {
Some(num) => num,
None => {
println!("Please input a number!");
return;
}
};
println!("You guessed: {}", num);
match cmp(num, secret_number) {
Less => println!("Too small!"),
Greater => println!("Too big!"),
Equal => println!("You win!"),
}
}
fn cmp(a: uint, b: uint) -> Ordering {
if a < b { Less }
else if a > b { Greater }
else { Equal }
}
使用std::io;
使用std::rand;
fn main(){
println!(“猜猜数字!”);
让秘密_数=(兰德::随机::()%100u)+1u;
println!(“秘密号为:{}”,秘密号);
println!(“请输入您的猜测。”);
让输入=io::stdin().读取行()
.ok()
.expect(“读取行失败”);
让input_num:Option=input.parse();
让num=匹配输入\u num{
Some(num)=>num,
无=>{
println!(“请输入一个数字!”);
返回;
}
};
println!(“你猜:{}”,num);
匹配cmp(编号、机密号){
Less=>println!(“太小了!”),
更大=>println!(“太大了!”),
Equal=>println!(“你赢了!”),
}
}
fn cmp(a:uint,b:uint)->订购{
如果ab{更大}
else{Equal}
}
在编译时,它提出了以下问题:
/home/daniel/Projects/gussing_game/src/main.rs:16:41:16:48错误:
类型collections::string::string
未在中实现任何方法
范围命名为parse
/home/daniel/Projects/gussing\u game/src/main.rs:16
让input_num:Option=input.parse()
这只是
rustc
版本的问题:parse
方法,但是您的编译器大约有3天历史了。锈蚀移动很快,不幸的是,在出血边缘工作时,很容易碰到像这样的小箱子
希望这将真正从开始解决。此代码与
rustc 0.13.0-dev(29ad8539b 2014-12-24 16:21:23+0000)一样工作正常。
。您可能需要更新您的RUSC以匹配文档。好吧,那肯定是坏运气。我重新安装了rust,它可以正常工作!