// 关联函数经常被用作返回一个结构体新实例的构造函数。 // 这些函数的名称通常为 new ,但 new 并不是一个关键字。 fnsquare(size: u32) ->Self{ Self { width: size, height: size, } } }
fnmain() { letrect = Rectangle::square(30);
letrect1 = Rectangle { width: 10, height: 30 };
letrect2 = Rectangle { width: 60, height: 80 }; dbg!(&rect); println!("The area of the rectangle is {} square pixels.", rect.area()); println!("Can rect hold rect1? {}", rect.can_hold(&rect1)); println!("Can rect hold rect2? {}", rect.can_hold(&rect2)); }