Programming | 프로그래밍 언어/EffectiveC++

C++를 언어들의 연합체로 바라보는 안목

gyunnnnnn 2022. 11. 15. 00:18

초창기의 C++

  • C언어에 객체 지향 기능 몇 가지가 결합된 형태

오늘날의 C++

  • 다중패러다임 프로그래밍 언어
    • 절차적 프로그래밍을 기본으로 한다.
    • 객체지향 프로그래밍
    • 함수식 프로그래밍
    • 일반화 프로그래밍
    • 메타 프로그래밍
  • C++를 단일 언어로 바라보는 눈을 넓혀 상관 관계가 있는 여러 언어들의 연합체로 본다.

C++의 하위 언어

C

  • C++C를 기본으로 한다.
  • 블록, 문장, 선행 처리자, 기본제공 데이터타입, 배열, 포인터

객체 지향 개념의 C++

  • 클래스를 쓰는 C
  • 클래스, 캡슐화, 상속, 다형성, 가상 함수(동적 바인딩)

템플릿 C++

  • C++의 일반화 프로그래밍 부분
  • 새로운 프로그래밍 패러다임인 템플릿 메타프로그래밍이 파생

STL

  • 템플릿 라이브러리
  • 컨테이너, 반복자, 알고리즘, 함수 객체