다음을 통해 공유


경고 C26457

(void) 반환 값을 무시하는 데 사용해서는 안 됩니다. 대신 'std::ignore ='를 사용합니다(es.48).

설명

C++ 핵심 지침 ES.48에서 발췌한 내용:

반환 값을 무시 [[nodiscard]] 하도록 (void) 캐스팅하지 마세요. 이러한 결과를 의도적으로 카드 원하는 경우 먼저 그것이 정말 좋은 생각인지 (일반적으로 함수의 작성자 또는 처음에 사용되는 [[nodiscard]] 반환 형식의 좋은 이유가 있습니다)에 대해 열심히 생각하십시오. 여전히 적절하다고 생각하고 코드 검토자가 동의하는 경우 간단하고 이식 가능하며 grep하기 쉬운 경고를 해제하는 데 사용합니다 std::ignore = .

코드 분석 이름: USE_STD_IGNORE_INSTEAD_OF_VOID_CAST

예시

캐스트 대신 다음을 사용합니다std::ignore.void

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

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