rust多個mod文件引用和文件夾mod使用注意事項(xiàng)小結(jié)
rust多個mod文件引用和文件夾mod使用注意事項(xiàng)
如果mod文件都在同一級目錄,則直接使用就可以,因?yàn)閞ust文件都是一個隱藏的mod,但是如果mod文件在另外一個目錄下面,就需要在目錄下面聲明一個mod.rs文件,這樣才能將那個目錄識別為一個mod,可以在mod.rs里面使用pub mod 暴露該目錄下面的mod,從而讓別的文件引入使用。
比如這里有一個request.rs文件:
// 每一個rust文件都是一個隱藏的module pub fn get_info() { println!("獲取用戶信息") }
想要在main.rs中使用的話,直接引入即可:
但是如果我定義了一個utils文件夾,想導(dǎo)出utils里面的mod,就需要在utils下面聲明一個mod.rs文件:并導(dǎo)出想要導(dǎo)出的mod文件
然后在main.rs里面就可以識別到utils了:
補(bǔ)充:
5分鐘看明白rust mod use
rust把mod簡單的事沒說清,一片混亂,似懂非懂.
mod語句查找只有一條規(guī)則:先找mod名1.rs,沒有就我同名文件夾下的mod名1.rs,如果沒有,就同名文件夾下的mod名1/mod.rs,再沒有就error.
在mod.rs中,pub mod 文件名1或文件夾名1/2,可以無限遞歸,當(dāng)然沒必要。
直到找到 模塊.rs.
如果模塊.rs中僅聲明,沒定義,又要無限遞歸,當(dāng)然也沒必要。
假設(shè)不玩遞歸了,直到模塊z.rs中有定義了,得是pub mod …{…}.
而調(diào)用的.rs中得:mod mod名1;use mod名1::文件夾2…n::文件名z::mod名;
如果同名 ,即:模塊名文件夾::(模塊名.rs文件本身的)模塊名::(文件模塊名.rs中的pub mod )模塊名::(函數(shù))模塊名,一共連續(xù)4個路徑。
使用時:mod名::函數(shù)名或直接函數(shù)名(不建議,尤其大程序,容易混淆)。
這種文件夾必須用mod.rs聯(lián)結(jié)文件夾與文件名.rs,并且必經(jīng)我的同名文件夾下查找要調(diào)用的mod的方式,是一種文件路徑與mod混用方式,畫蛇添足。為了裝逼的遞歸?還是適應(yīng)不同的文件系統(tǒng)?
到此這篇關(guān)于rust多個mod文件引用和文件夾mod使用注意事項(xiàng)的文章就介紹到這了,更多相關(guān)rust多個mod文件引用內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
rust實(shí)現(xiàn)post小程序(完整代碼)
這篇文章主要介紹了rust實(shí)現(xiàn)一個post小程序,本文通過示例代碼給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧2024-04-04rust的nutyp驗(yàn)證和validator驗(yàn)證數(shù)據(jù)的方法示例詳解
本文介紹了在Rust語言中,如何使用nuType和validator兩種工具來對Cargo.toml和modules.rs文件進(jìn)行驗(yàn)證,通過具體的代碼示例和操作步驟,詳細(xì)解釋了驗(yàn)證過程和相關(guān)配置,幫助讀者更好地理解和掌握使用這兩種驗(yàn)證工具的方法,更多Rust相關(guān)技術(shù)資訊,可繼續(xù)關(guān)注腳本之家2024-09-09