경고 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
}