#1. [레거시 C++ 가이드] 주요 구성 요소 미리보기
C++ 의 주요 구성 요소는 하기와 같습니다.
-
main()
함수어플리케이션의 시작 함수입니다.
1
void main(void) {}
-
입출력
1 2
std::cout << "Hello world" << std::endl; std::cin>>val;
-
이름 충돌을 피하기 위한 유효 범위를 제공합니다.
1
using namespace std;
-
포인터 외에 참조자를 제공합니다. 포인터는 널(
NULL
)이 될 수 있지만, 참조자는 널이 될 수 없습니다.1 2
int i; int& j = i;
-
데이터를 저장하고 처리합니다.
특히 구조체와 클래스는 데이터와 이를 처리하는 함수를 응집하여 개체 지향 프로그래밍을 가능하게 합니다.
-
10
,20
등 값을 나타내는 상수입니다. -
+
,-
등 데이터들을 연산합니다. -
if()
,for()
등 구문을 분기하거나 반복합니다. -
코드를 재활용하여 구조적 프로그래밍을 가능하게 합니다.
-
용도에 따라 구분하여 형변환 할 수 있도록 static_cast, const_cast, dynamic_cast, reinterpret_cast를 제공합니다.
-
타입에 따라 클래스나 함수를 생성하는 틀입니다.
-
1 2
try {} catch (...) {}
-
표준 템플릿 라이브러리(Standard Template Library, STL)를 통해 문자열 타입을 제공합니다.
1 2
#include <string> std::string str = "Hello world";
-
데이터 자료구조를 관리할 수 있는 컨테이너를 제공합니다.(vector,
list
,queue
,stack
,deque
,priority_queue
,set
,multiset
,map
,multimap
)1 2
std::vector<int> data(100); // 기본값으로 초기화된 100개의 요소 data[0] = 10;
-
컨테이너의 요소 탐색을 위해 이터레이터(반복자)를 제공합니다.
1 2 3 4 5
std::vector<int> datas; for(std::vector<int>::iterator itr = datas.begin(); itr != datas.end(); ++itr) { std::cout << (*itr) << std::endl; }
-
일련의 동작에 대한 표준 알고리즘을 제공합니다.(for_each(), remove(), find(), count() 등)
-
auto_ptr을 제공합니다.(모던 C++에선 사라졌습니다.)
댓글남기기