rust: 从键盘输入数据

柯清野
2023-12-01

直接上代码吧!

use std::io;
fn main() {
    println!("Guess th number!");
    println!("Please input your guess.");
	let mut guess = String::new();
	io::stdin().read_line(&mut guess).expect("Failed to read line");
	println!("You guessed: {}", guess);
}

很有意思,rust借鉴了很多函数式编程的思想,前几年学过Haskell,现在感到有些面熟。下面这个命令,没有用C++惯用的构造函数,而是使用了一个函数,返回一个类的实例。

let mut guess = String::new();

rust的编译机制确保这个过程具有极高的运行效率。如果C++这样做,想获得高效率,很繁琐,左值引用、右值引用等一堆概念,直接把人绕晕。

rust直接用函数io::stdin()返回输入设备对象,也是函数的形式,没有采用直接用变量或引用的方式。C++的cin是个赤裸裸的输入设备对象。

 类似资料: