5. Struct
程序 = 数据结构 + 算法
类如C++/Java中的Object,C语言中的Struct,Rust中定义数据结构的关键字也是Struct,可能也是Rust作为底层语言向C致敬吧。
数据
定义一个结构体Rectangle长方形,包含field长,宽。
#[derive(Debug)]
struct Rectangle {
width: u32,
height: u32,
}
行为
- 求面积
impl Rectangle {
fn area(&self) -> u32 {
self.width * self.height
}
}
- 静态方法
用:: 调用,形如new(), default()
fn new() -> Self{
Rectangle{
0,
0,
}
}
- 成员方法
用.(点)来调用,表明此方法是对象级别的,如area()方法,它的参数是&self, 相当于self: &Rectangle的简化写法。
网友评论