zoukankan      html  css  js  c++  java
  • 结构体和方法

    结构体和方法

    use std::fmt;
    
    #[derive(Debug)]
    struct Rectangle {
         u32,
        height: u32,
    }
    
    impl std::fmt::Display for Rectangle {
        fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
            write!(f, "Rectangle  {} height: {}", self.width, self.height)
        }
    }
    
    impl Rectangle {
        fn area(&self) -> u32 {
            self.width * self.width
        }
    
        fn can_hold(&self, other: &Rectangle) -> bool {
            self.width > other.width && self.height > other.height
        }
    
        fn square(size: u32) -> Rectangle {
            Rectangle {
                 size,
                height: size,
            }
        }
    }
    
    fn main() {
        let rect1 = Rectangle {  30, height: 50 };
        let rect2 = Rectangle {  10, height: 40 };
        let rect3 = Rectangle {  60, height: 45 };
        let rect4 = Rectangle::square(40);
    
        println!("Can rect1 hold rect2? {}", rect1.can_hold(&rect2));
        println!("Can rect1 hold rect3? {}", rect1.can_hold(&rect3));
    
        println!("rect4 is {}", rect4);
        println!("rect4 is {:#?}", rect4);
        println!(
            "The area of the rectangle is {} square pixels.",
            rect4.area()
        );
    }

  • 相关阅读:
    js 实现自增长
    常用的js脚本验证
    Jquery 收集
    Jquery 常用操作搜集
    Jquery 点击绑定行 弹出详细页面
    Jquery 了解
    Html 标尺
    Editor Guidelines
    程序员需要做到
    jS 回车事件
  • 原文地址:https://www.cnblogs.com/lsgxeva/p/8544200.html
Copyright © 2011-2022 走看看