728x90
반응형
C++
표준은 지속적으로 발전하며, 새로운 기능이 추가되는 만큼 기존 기능 중 일부는 더 이상 필요하지 않거나 시대에 맞지 않아 점차 폐지 및 제거됩니다.- 이러한 변화는 코드의 안전성과 효율성을 높이고, 최신 패러다임에 맞춘 프로그래밍을 유도하기 위한 것입니다.
- 본 글에서는
C++
표준에서 폐지 및 제거된 주요 항목과 그 이유, 그리고 대체 기능들을 정리하여 앞으로의 개발에 도움이 될 수 있도록 안내합니다.
-
항목 도입 폐지 제거 대체/설명 std::auto_ptr
C++98
C++11
C++17
std::unique_ptr
, 설명std::bind1st
,std::bind2nd
C++98
C++11
C++17
std::bind
/ 람다 , 설명std::ptr_fun
C++98
C++11
C++17
람다 , 설명 std::mem_fun
,std::mem_fun_ref
C++98
C++11
C++17
std::function
/ 람다 , 설명std::unary_function
,std::binary_function
C++98
C++11
C++17
람다 및 함수 객체 , 설명 std::random_shuffle
C++98
C++14
C++17
std::shuffle
, 설명std::iterator
(base 클래스)C++98
C++17
C++20
iterator_concepts
기반, 설명std::allocator<void>
C++98
C++17
C++20
필요 없어짐, 템플릿 자동 추론. 설명
-
항목 도입 폐지 제거 대체/설명 std::result_of
C++11
C++17
C++20
std::invoke_result
, 설명std::tr1
네임스페이스C++11
C++17
C++20
C++11 이상 표준 기능으로 통합, 설명 std::function::target_type::operator==
(특정 연산자 오버로드)C++11
C++20
C++23
사용 권장하지 않음, 비교 대신 target_type()
확인, 설명
-
항목 도입 폐지 제거 대체/설명 std::raw_storage_iterator
C++98
C++20
C++26 예정
사용 권장하지 않음, 컨테이너 기반 관리 권장 <codecvt>
일부 인코딩 변환 관련 기능C++11
C++17
C++26 예정
플랫폼 별 대안 또는 다른 라이브러리 사용 권장
-
구분 의미 사용 가능 여부 경고 또는 오류 다른 대안 필요 여부 폐지( deprecated
)앞으로 제거 예정, 사용 권장 안 함 가능 경고( warning
)필요 제거( removed
)표준에서 완전 제거 불가능 오류( error
)반드시 필요
C++98
:ISO/IEC 14882:1998
C++03
:ISO/IEC 14882:2003
C++11
:ISO/IEC 14882:2011
C++14
:ISO/IEC 14882:2014
C++17
:ISO/IEC 14882:2017
C++20
:ISO/IEC 14882:2020
C++23
:ISO/IEC 14882:2024
- 도움이 되셨으면 하단의 ❤️ 공감 버튼 부탁 드립니다. 감사합니다! 😄
728x90
반응형
'C C++' 카테고리의 다른 글
C++17에서 std::bind1st와 std::bind2nd가 제거된 이유 (0) | 2025.03.22 |
---|---|
Visual Studio C++ 라이브러리 패키지 매니저 vcpkg 설치 및 자동 업데이트 가이드 (0) | 2025.03.22 |
C++에서 구조체(struct)를 다양하게 선언하는 방법 (0) | 2025.03.21 |
C++11과 C++14에서 std::unique_ptr 배열 사용법 비교 (0) | 2025.03.20 |
std::unique_ptr 생성 방법과 예외 안전성 (0) | 2025.03.20 |