rust性能警告如何處理?
假設有一個警告,例如 path_statements、unused_variables.有沒有辦法忽略這一瞬間,而不將它們隔離到代碼塊或函數中?要清楚,當代碼中有一個警告時.我希望能夠僅消除該警告,而不必針對特定警告進行特殊更改.并且在其他任何地方都沒有這種安靜的警告,甚至稍后在同一功能中也是如此.
使用 GCC,可以按如下方式完成:
#pragma GCC 診斷推送#pragma GCC 診斷忽略"-Wformat"/* 不引發警告的孤立區域!*/this_would_raise_Wformat(args);#pragma GCC 診斷彈出窗口
Rust 是否具有同等功能?
<小時>
注意,我在詢問如何消除警告的一般情況.我知道有一些方法可以解決例如未使用的 var 警告.
解決方案
要使警告靜音,您必須將 allow(warning_type) 屬性添加到受影響的表達式或任何它的父母.如果您只想對某個特定表達式的警告靜音,您可以將屬性添加到該表達式/語句中:
fn main() {#[允許(unused_variables)]讓 not_used = 27;#[允許(路徑語句)]std::io::stdin;println!("嗨!");}
然而,為語句/表達式(相對于項,如函數)添加屬性的功能仍然有點破.特別是,在上面的代碼中,std::io::stdin 行仍然會觸發警告.您可以在此處閱讀有關此功能的正在進行的討論.
<小時>
通常不需要使用屬性.許多警告(例如 unused_variables 和 unused_must_use)可以通過使用 let _ = 作為您的左側陳述.一般來說,任何以下劃線開頭的變量都不會觸發未使用的警告.