Skip to content
Iconer edited this page Nov 12, 2020 · 27 revisions

Overview

C++은 수많은 라이브러리들의 집합으로 이루어진 언어입니다. C++의 공식 라이브러리를 흔히 이르는 단어는 STL, 표준 템플릿 라이브러리였습니다. 템플릿 라이브러리는 다형성, 일반화 프로그래밍을 지원하는 라이브러리라는 뜻으로, 당시에는 C++ 표준 라이브러리 그 자체를 이르는 단어였습니다. 하지만 C++ 초기부터 쓰인 용어임에도 불구하고 STL이란 단어는 원래 표준 라이브러리 명세에 직접 언급되지 않았습니다. 그리고 시간이 흘러 C++ 언어가 커지고 단순히 템플릿을 이용한 일반화 프로그래밍을 쓰는 라이브러리라고 지칭하기에는 의미가 달라져버렸습니다. 오늘날에는 대체로 STL의 의미를 저장고, 반복자, 알고리즘, 몇몇 유틸리티들의 라이브러리를 한데 이르는 용어입니다.

  1. Container. 저장고는 일정한 규격과 접근 방법을 두고 설계된 클래스들입니다. 이름 그대로 안에 정보를 저장할 수 있으며 이를 쉽게 가능케하는 API들이 존재합니다.
  2. Iterator. 반복자는 저장고를 참조하고, 순회하고, 수정하는 방법을 일반화시킨 클래스입니다. C++에선 연산자 오버로딩을 통해 포인터, 배열과 같이 접근할 수 있었지만 게임메이커에서는 언어 기능의 부재로 멤버 함수를 이용합니다.
  3. Algorithm. 알고리즘은 반복자를 기반으로 저장고의 요소들을 조작하는 함수들을 이르는 말입니다. 매우 범용적으로 작성돼있기 때문에 어떤 형태의 저장고라도 일정한 접근 API만 갖춰지면 문제가 없습니다.

이렇게 다양한 도구들을 이제 게임메이커에서도 사용하실 수 있습니다! 이 라이브러리들은 서로 의존적인 관계를 갖고 있으며 호환성이 매우 좋습니다. 여러분은 이 도구를 사용하여 효율적인 자료 관리를 하실 수 있습니다. 또한 몇몇 논리식을 처리할 때도 큰 도움이 될겁니다. 각 요소에 대한 더 자세한 설명은 항목 페이지를 확인하세요.

Contents

Containers

Idea

Clone this wiki locally