Rust中的结构体及方法语法
Posted aguncn
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Rust中的结构体及方法语法相关的知识,希望对你有一定的参考价值。
这个可以和类作比较,或是go当中的方法比较。
#[derive(Debug)] struct Rectangle width: u32, height: u32, impl Rectangle fn area(&self) -> u32 self.width * self.height fn square(size: u32) -> Rectangle Rectangle width: size, height: size impl Rectangle fn can_hold(&self, other: &Rectangle) -> bool self.width > other.width && self.height > other.height fn main() let rect1 = Rectangle width: 30, height: 50; let rect2 = Rectangle width: 10, height: 40; let rect3 = Rectangle width: 60, height: 45; println!("Can rect1 hold rect2? ", rect1.can_hold(&rect2)); println!("Can rect1 hold rect3? ", rect1.can_hold(&rect3)); println!("rect1 is :#?", rect1); println!( "The area of retangle is square pixels", rect1.area() ); println!( "The area of retangle is square pixels", area(&rect1) ); let sq = Rectangle::square(5); println!("square is :#?", sq); println!("The area of Square is square pixels", sq.area()); fn area(rectangle: &Rectangle) -> u32 rectangle.width * rectangle.height
以上是关于Rust中的结构体及方法语法的主要内容,如果未能解决你的问题,请参考以下文章