- Rust简介
- Rust的特点
- Rust开发环境安装
- Rust第一个程序
- 控制语句
- Rust所有权
- Rust结构体
- Rust枚举
- Rust模块
- Rust集合
- Rust错误处理
- Rust泛型与性状
- Rust智能指针
Rust结构体更新语法
使用Struct
更新语法从其他实例创建新实例。
当新实例使用旧实例的大部分值时,可以使用struct update
语法。考虑两名员工employee1
和employee2
。
- 首先,创建
Employee
结构体的实例employee1
:
let employee1 = Employee{ employee_name : String::from("Maxsu"), employee_id: 12, employee_profile : String::from("IT工程师"), active : true, };
- 其次,创建
employee2
的实例。employee2
实例的某些值与employee1
相同。 有两种方法可以声明employee2
实例。
第一种方法是在没有语法更新的情况下声明employee2
实例。
let employee2 = Employee{ employee_name : String::from("Maxsu"), employee_id: 11, employee_profile : employee1.employee_profile, active : employee1.active, };
第二种方法是使用语法更新声明employee2
实例。
let employee2 = Employee{ employee_name : String::from("zyiz"), employee_id: 11, ..employee1 };
语法..
指定其余字段未显式设置,并且它们与给定实例中的字段具有相同的值。
下面来看一个结构的简单示例:
struct Triangle { base:f64, height:f64, } fn main() { let triangle= Triangle{base:20.0,height:30.0}; print!("Area of a right angled triangle is {}", area(&triangle)); } fn area(t:&Triangle)->f64 { 0.5 * t.base * t.height }
执行上面示例代码,得到以下结果 -
Area of a right angled triangle is 300
在上面的例子中,创建了三角形(Triangle
)的结构体,它包含两个变量,即直角三角形的底边和高度。三角形(Triangle
)的实例是在main()
方法中创建的。
上一篇:Rust结构体
下一篇:Rust结构体方法语法