構文の錆の方法と構造

これは、比較やクラス、または比較方法の中に行くことができます。

#[導き出す(デバッグ)] 
構造体長方形{ 
    幅:U32、
    高さ:U32、
} 

IMPLの長方形{ 
    FN領域(&自己) - > U32 { 
	self.width * self.height 
    } 
    
    FN角(サイズ:U32) - >長方形{ 
	矩形{幅:サイズ、高さ:サイズ} 
    } 
} 

IMPLの矩形{ 
    FN can_hold(&自己、他:&長方形) - > {BOOL 
	self.width> other.width && self.height> other.height 
    } 
} 

(主FN){ 
    せRECT1 =長方形{幅30、高さ:50}。
    せRECT2 =長方形{幅10、高さ:40}。
    せrect3 =長方形{幅60、高さ:45}。

    !のprintln( "ホールドRECT2をRECT1できます{}?"、rect1.can_hold(&RECT2)); 
    !のprintln( "ホールドrect3をRECT1できます{}?"、rect1.can_hold(&rect3)); 
    println!( "RECT1がある{:?#}"、RECT1)。
    !のprintln(
	rect1.area、 "retangleの面積が、{}正方画素です"() 
    )。
    println(!
        "retangleの面積が、{}正方画素である"、領域(&RECT1) 
    )。

    聞かせSQ =長方形::広場(5); 

    println!( "四角がある{:?#}"、SQ); 
    !のprintln( "スクエアの面積が、{}正方画素である"、sq.area())。
} 

FN領域(矩形:&長方形) - > U32 { 
    rectangle.width * rectangle.height 
}

  

おすすめ

転載: www.cnblogs.com/aguncn/p/11403541.html