类型比起二进制数据,有许多优势:减少开发者心智负担安全、容易优化常见的类型分类:静态类型:在编译器对类型进行检查动态类型:在运行期对类型进行检查强类型:不允许隐式类型转换弱类型:允许隐式类型转换Rust...u8), IPv6(u8,u8,u8,u8,u8,u8,u8,u8,u8,u8,u8,u8),}fn main() { let localhost :IPAddr = IPAddr::IPv4...fn action(method:fn(u32,u32)->u32,a: u32,b: u32) -> u32 { method(a,b);}fn add(a:u32,b:u32) -> u32...("{}",action(add,10,20))}发散函数发散函数指的是永远不会被返回,它们的返回值标记!,这是一个空类型。...("{}",s2_ref);}生命周期注解生命周期注解不会改变之前生命周期的长短,它还是原来的生命周期,注解是给编译器看的,拥有相同的生命周期注解,生命周期都是一样的。