C++14부터 도입된 속성으로 더이 상 사용하지 않거나 곧 제거될 함수 변수 타입에 적용해 사용을 경고하도록 컴파일러에 알릴 수 있다.
프로젝트 경고 수준에 따라 경고 또는 컴파일 에러를 띄운다.
기존 코드를 남겨두되 대체 기능으로 유도할 때 사용한다.
예시
#include <iostream>
// 반환형 옆에 붙이면 이 함수를 쓰면 경고 발생
[[deprecated]] void OldFunc()
{
std::cerr << "오래된 함수 호출\n";
}
// 메시지를 달아 경고 문구를 상세히 지정 가능
[[deprecated("새로운 함수로 대체할 것")]]
void OldFunc2()
{
std::cerr << "오래된 함수 호출\n";
}
int main()
{
OldFunc(); // 컴파일 경고: ‘OldFunc’ is deprecated
OldFunc2(); // 컴파일 경고: ‘OldFunc2’ is deprecated: 새로운 함수로 대체할 것
return 0;
}
'C, C++' 카테고리의 다른 글
[[maybe_unused]] (0) | 2025.01.31 |
---|---|
[[noreturn]] (0) | 2025.01.27 |
<mutex> (0) | 2024.02.22 |
<atomic> (0) | 2024.02.21 |
<thread> (0) | 2024.02.20 |