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 |