最近学习无人驾驶,在无人驾驶中用到最多语言是 cpp 这样相对底层语言。那么我们除了 cpp 现在多了 rust 一种选择,不过 rust 还局限一些领域,特别是一些前沿领域例如区块链。因为只有在这里新领域中 rust 较 cpp 优势才能体现出来。在一些传统的领域 rust 因为是新秀,底蕴还是较 cpp 差了不少,可用资源不多,还需要大家努力来打造 rust 的生态,不过好的东西是挡不住的。
#[derive(Debug)]
struct Cat{
name:String,
weight:f32,
height:f32,
}
了解 cpp 对于结构体应该不会陌生,struct
是说明类的结构,可以看理解为类设计说明书。也可以理解为字段的集合,这里字段作为事物属性说明而组合在一起来表示一类事物。
impl Cat{
fn get_name(&self)-> &str{
&(self.name[..])
}
fn get_weight(&self)->f32{
self.weight
}
}
通过关键字impl
给结构体添加方法,好处是将属性和行为分开定义,使用impl
给结构体赋予行为。
fn main() {
let tom = Cat{
name:String::from("tom"),
weight:50.0,
height:35.5
};
println!("cat = {:#?}",tom);
}
网友评论