Rust中对某个结构体实现方法于rust中的关联函数
生活随笔
收集整理的這篇文章主要介紹了
Rust中对某个结构体实现方法于rust中的关联函数
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
寫法比較獨(dú)特,但與go語言相差不了太多,都是為結(jié)構(gòu)體單獨(dú)進(jìn)行方法的實(shí)現(xiàn):
struct Rectangle{width: u32,length:u32, } impl Rectangle{fn area(&self) -> u32 {self.width*self.length} } fn main() {let rect = Rectangle{width:30,length:50};println!("{}",rect.area()) }這里的impl里面就為Rectangle結(jié)構(gòu)體實(shí)現(xiàn)了相應(yīng)的面積計(jì)算方法,在調(diào)用時與其他語言相同,也是直接通過點(diǎn)的方式調(diào)用實(shí)例結(jié)構(gòu)體上的方法。self會被推斷成Rectangle類型,這與python類似。
注:Rust根據(jù)情況自動添加&,&mut或者*,以便object可以匹配方法的簽名。
可以在impl塊里定義不把self作為第一個參數(shù)的函數(shù),叫做關(guān)聯(lián)函數(shù),類似于函數(shù)中的構(gòu)造器。
總結(jié)
以上是生活随笔為你收集整理的Rust中对某个结构体实现方法于rust中的关联函数的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 自我分析colly的robots源码
- 下一篇: 利用go语言创建web server的两