更新 function

This commit is contained in:
shikong 2024-05-25 18:24:54 +08:00
parent e774adcc13
commit d92172ff24
Signed by: Shikong
GPG Key ID: BD85FF18B373C341

View File

@ -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))
} }