共用方式為


警告 C26457

(void) 不應該用來忽略傳回值,請改用 ' std::ignore = ' (es.48)

備註

C++ Core Guideline ES.48 的摘錄

絕對不要轉換成 (void) 忽略傳 [[nodiscard]] 回值。 如果您刻意要捨棄這類結果,請先仔細思考這是否真的是個好主意(通常有充分的理由是函式作者或第一次使用的 [[nodiscard]] 傳回型別)。 如果您仍然認為這是適當的,且您的程式碼檢閱者同意,請使用 std::ignore = 來關閉簡單、可攜且容易 grep 的警告。

程式碼分析名稱: USE_STD_IGNORE_INSTEAD_OF_VOID_CAST

範例

使用 std::ignore ,而不是轉換成 void

struct S{};
[[nodiscard]] S getS();

void function() {
    (void) getS(); // C26457
    std::ignore = getS(); // OK
}