C++11에 도입된 속성으로 함수가 절대 반환되지 않음을 컴파일러에게 알려준다.
시스템 종료 함수, 예외만 던지는 함수, 무한 루프 함수에 사용
예시
#include <iostream>
// 함수가 반환되지 않음을 명시
[[noreturn]] void Error()
{
std::cerr << "치명적인 오류 발생!\n";
std::exit(1); // 함수가 절대 돌아오지 않고 프로그램 종료
}
int main()
{
Error();
// 이 코드는 실행되지 않음
std::cerr << "Hello, World!\n";
}
'C, C++' 카테고리의 다른 글
[[nodiscard]] (0) | 2025.02.12 |
---|---|
[[maybe_unused]] (0) | 2025.01.31 |
[[deprecated]] (0) | 2025.01.26 |
<mutex> (0) | 2024.02.22 |
<atomic> (0) | 2024.02.21 |