[[nodiscard]]

Yongs12 ㅣ 2025. 2. 12. 20:32

C++17부터 도입된 속성중 하나로 함수나 반환값을 무시하면 경고를 발생시켜 의도하지 않은 실수를 방지해준다.

반환값을 꼭 확인해야 할 때 사용되며 실수를 줄이는데 유용하다

 

 

함수 반환 예시

[[nodiscard]] int GetResult()
{
    return 42;
}

int main()
{
    GetResult(); //경고 발생 반환값 무시
}

 

 

구조체 예시

struct [[nodiscard]] ErrorCode
{
    int code;
    std::string message;
};

ErrorCode Error()
{
    return { 1, "실패" };
}

int main()
{
    Error(); // 경고 발생!
}

'C, C++' 카테고리의 다른 글

[[likely]] / [[unlikely]]  (0) 2025.04.17
consteval  (0) 2025.04.10
[[maybe_unused]]  (0) 2025.01.31
[[noreturn]]  (0) 2025.01.27
[[deprecated]]  (0) 2025.01.26