结构体
结构体是一种可以为空或可以有一个以上字段的复合数据类型,这跟C语言和Golang中的结构体类似。
结构体的定义
Rust定义结构体的方式比较简单,只要使用struct关键字后面跟上结构体名字即可。
一般的定义如下所示
/// 定义一个空的结构体
/// 如果这个结构体中没有包含任何字段,后面的花括号可以省略
struct IsNullStruct;
/// 定义一个带有字段的结构体
/// 定义带有字段的结构体时,字段名和类型标注应用冒号进行分割,各个字段间用逗号分割
struct SingleDog {
name: String,
gender: i32,
}
结构体的初始化
Rust有多种方式对结构体进行初始化,有包括如下几种
正常初始化
#[derive(Debug)] struct SingleDog { name: String, gedner: i32, } /// 带有类型标注的结构体初始化 let json: SingleDog = SingleDog { name: String::from("single Dog 1"), gender: 1, }; /// 没有带类型标注的结构体初始化 let sum = SingleDog { name: String::from("single dog 2"), gender: 2, } println!("the single dog 1 is : {:?}", json); println!("the single dog 2 is : {:?}", sum);
that's all