C++
C++ | |
---|---|
![]() | |
개발사 | |
개발자 | Bjarne Stroustrup |
최초 출시 | 1985년 |
최신 버전 | C++23 |
지원 운영체제 | |
플랫폼 | |
프로그래밍 언어 | |
라이선스 | ISO 표준 (구현체마다 다름) |
웹사이트 | 공식 사이트 |
C++는 1985년 Bjarne Stroustrup가 개발한 범용 프로그래밍 언어이다. C 언어를 기반으로 객체 지향 프로그래밍(OOP) 기능을 추가하여 만들어졌으며, 현재는 절차적, 객체 지향, 제네릭, 함수형 등 다양한 패러다임을 지원하는 다중 패러다임 언어로 발전하였다.
역사
- 1979년: Bjarne Stroustrup이 C 언어에 객체 지향 기능을 추가한 “C with Classes”를 개발.
- 1985년: 공식적으로 C++ 이름으로 첫 상용화.
- 1990년: 첫 번째 표준 템플릿 라이브러리(STL) 도입.
- 1998년: ISO C++98 표준 제정.
- 2011년: C++11 발표 (람다, auto, 스마트 포인터 등 대규모 확장).
- 2017년: C++17 발표 (구조적 바인딩, if/switch 초기화 등).
- 2020년: C++20 발표 (코루틴, 콘셉트, 모듈).
- 2023년: C++23 발표.
- 현재: 차세대 표준인 C++26 개발 진행 중.
주요 특징
C++ 언어는 다음과 같은 특징을 가진다:
- C 언어 호환성 유지 → 저수준 메모리 제어 가능
- 객체 지향 프로그래밍(OOP) 지원 → 클래스, 상속, 다형성 제공
- 제네릭 프로그래밍 지원 → 템플릿 시스템을 통한 코드 재사용성 향상
- 함수형 프로그래밍 요소 지원 → 람다 표현식, 고차 함수
- 표준 템플릿 라이브러리(STL) → 벡터, 맵, 알고리즘 등 제공
- 성능 중심 설계 → 네이티브 코드로 직접 컴파일되어 실행 속도가 빠름
- 멀티패러다임 언어 → 절차적, 객체 지향, 함수형, 제네릭 스타일을 모두 지원
예제 코드
C++의 대표적인 예제는 "Hello, World!" 출력이다.
#include <iostream>
using namespace std;
int main() {
cout << "Hello, World!" << endl;
return 0;
}
활용
C++는 다음과 같은 분야에서 광범위하게 활용된다:
- 시스템 프로그래밍 (운영체제, 드라이버)
- 게임 개발 (Unreal Engine, Unity 일부 구성 요소 등)
- 데스크톱 애플리케이션 (브라우저, 오피스 프로그램)
- 고성능 서버 및 데이터베이스 (MySQL, MongoDB 등)
- 임베디드 소프트웨어 및 IoT
- 그래픽스 및 시뮬레이션 소프트웨어
- 금융 및 트레이딩 시스템 (고속 계산 필요 분야)