버전업 되면서 하위호환성이 지켜지지 않은 항목들은
미정의 동작이나 결함이 있는 기능을 개선한 경우가 대부분입니다.
모듈, 컨셉, 코루틴 같은 기능들은 타 언어들처럼 계속해서 언어가 발전하고 있는거구요.
특히 모듈의 경우 이전부터 계속 있어왔던 요구사항이죠.
std::iterator 지원 중단이 말씀하신 "미정의 동작이나 결함이 있는 기능을 개선"한 경우에 포함되는지는 잘 모르겠습니다.
다만 C++이 타 언어에 비해 뒤쳐지는 점은 크게 다음과 같습니다.
- 패키지 매니저
- 컴파일러 파편화
- 복잡한 컴파일 방식(Make, CMake 추가 학습 요구)
- 커뮤니티의 무관심
이 중 커뮤니티의 무관심으로 인해 양질의 아티클이 매우 부족하고,
적은 이용자 수로 나머지 세 문제가 해결되지 않는 것이 크다고 생각합니다.
그러니가 C++이 이상한언어인겁니다..
언어는 계속 버전업되면서 모듈이나 코루틴이나 이것저것 많이 추가되면서 자기가 다 하려고 하고
기능이 나오면 컴파일러들은 4년 5년뒤에 기능이 추가되고
컴파일러마다 할수있는것에 차이있고 문법 조금씩 차이있고
버전업되면서 미세하게 잘 쓰던것들 다 사라지고
stl 커지고 버전업되면서 구세대 컴퓨터에서는 돌아가지않고..
쓴다면 Go나 파이썬을 쓰라고 말씀드리고싶네요