更新 function
This commit is contained in:
parent
e774adcc13
commit
d92172ff24
@ -1,3 +1,30 @@
|
|||||||
fn main() {
|
fn main() {
|
||||||
println!("Hello, world!");
|
hello_rust();
|
||||||
|
}
|
||||||
|
|
||||||
|
// rust 中 函数通常使用 snake_case 命名法
|
||||||
|
fn hello_rust(){
|
||||||
|
print_hello("Rust");
|
||||||
|
}
|
||||||
|
|
||||||
|
// 在 rust 函数声明中, 必须写明函数的输入参数类型, 以及返回值类型
|
||||||
|
// 没有返回值时, 可以省略返回值类型
|
||||||
|
fn print_hello(msg: &str){
|
||||||
|
// lambda 表达式
|
||||||
|
let msg = ||{
|
||||||
|
// 一般情况下 函数中最后一个表达式的值 为 返回值
|
||||||
|
// 等价于 return build_msg("Hello", msg);
|
||||||
|
build_msg("Hello", msg)
|
||||||
|
};
|
||||||
|
println!("{}", msg());
|
||||||
|
}
|
||||||
|
|
||||||
|
// 函数的定义是一种语句
|
||||||
|
// 语句不能直接赋值给变量
|
||||||
|
// 如: let i = build_msg(prefix: &str, suffix: &str); // 错误
|
||||||
|
fn build_msg(prefix: &str, suffix: &str) -> String {
|
||||||
|
// 等价于 return String::from(format!("{}, {}", prefix, suffix));
|
||||||
|
// 如果 需要在函数中提前返回 可以用 return 关键字 并 返回指定值
|
||||||
|
// 这里为表达式, 所以可以直接返回
|
||||||
|
String::from(format!("{}, {}", prefix, suffix))
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user