▶헤더파일 - 변수(variable), 함수(function), 클래스(class) 선언
▷C와는 다르게 확장명을 사용하지 않음.
▷앞에 c를 붙여 c언어에서 사용하던 헤더파일도 사용가능 (cstdio, cstdlib)
▷표준 입출력 : iostream 사용
▶표준 입/출력
▷입력 : cout <<< "Hello, " << name << endl;
▷출력 : cin >> i >> f >> s;
▶string 클래스
▷문자열을 저장하는 클래스 string 사용
▷c와는 다르게 끝에 \0가 들어가지 않음.
▶함수 오버로딩(overloading)
▷동일한 이름이라도 매개변수의 수 및 타입이 다르면, 여러 함수를 호출 가능하다.
▶인라인(inline) 함수
▷함수의 목적 코드로 분기하는 대신에 인라인 함수의 소스코드가 호출코드에 삽입되어 컴파일
▷컴파일 과정에 호출되는곳에 내용이 쓰인다?
▶클래스(class)
▷객체지향 프로그램의 기본 단위
▷관련 변수, 함수 등을 하나의 단위로 정의
▷프로그램은 클래스로부터 생성된 객체를 이용하여 동작한다. ex) ~~~.print();
▷기존 struct와 유사한 개념이다. (c의 struct와 c++의 struct는 같지 않다?)
▶상속(inheritance)
▷기존에 정의된 클래스의 모든 멤버를 물려 받아 새로운 클래스를 정의하는 방법
▷하위 멤버에서 추가된 멤버 + 물려 받은 멤버
▶연산자 오버로딩(overloading)
▷클래스에 대한 연산자를 정의하고 사용함.
▶템플릿(template) 함수/클래스
▷기능은 동일하지만 다른 데이터타입을 대상으로 동작하는 함수/클래스
▶예외처리(exception handling)
▷예외의 발생에 대한 조건 검사 및 처리 지원
▷throw, try, catch
▶네임스페이스 (namespace)
▷변수/함수/클래스 등의 이름에 대한 공간
▷식별자에 대한 유일한 이름을 부여하고, 이름의 충돌을 피하기 위함.